You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jg...@apache.org on 2018/12/14 21:45:10 UTC

[1/6] tomee git commit: Add Metrics Histogram example in foler examples/mp-metrics-histogram

Repository: tomee
Updated Branches:
  refs/heads/master cad956dcf -> 64ed4189e


Add Metrics Histogram example in foler examples/mp-metrics-histogram


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/d1e06dbb
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/d1e06dbb
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/d1e06dbb

Branch: refs/heads/master
Commit: d1e06dbb2e20c74e95b8d52261f121a8d62c87bf
Parents: b4cf3cf
Author: Michael P. Redlich <mi...@redlich.net>
Authored: Sat Dec 8 07:39:36 2018 -0500
Committer: Michael P. Redlich <mi...@redlich.net>
Committed: Sat Dec 8 07:39:36 2018 -0500

----------------------------------------------------------------------
 examples/mp-metrics-histogram/README.md         | 182 +++++++++++++++++++
 examples/mp-metrics-histogram/pom.xml           |  87 +++++++++
 .../org/superbiz/histogram/WeatherService.java  |  67 +++++++
 .../superbiz/histogram/WeatherServiceTest.java  | 167 +++++++++++++++++
 .../src/test/resources/arquillian.xml           |  30 +++
 examples/mp-metrics-histogram/url-output.txt    | 164 +++++++++++++++++
 6 files changed, 697 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/d1e06dbb/examples/mp-metrics-histogram/README.md
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/README.md b/examples/mp-metrics-histogram/README.md
new file mode 100644
index 0000000..0679a44
--- /dev/null
+++ b/examples/mp-metrics-histogram/README.md
@@ -0,0 +1,182 @@
+index-group=Histogram
+type=page
+status=published
+~~~~~~
+# Microprofile Metrics
+This is an example on how to use microprofile metrics in TomEE.
+
+##### Run the application:
+
+    mvn clean install tomee:run 
+
+Within the application, there is an enpoint that will give you a weather histogram of the most recent New York City temperatures.
+
+##### Request:
+
+    curl -X GET http://localhost:8080/mp-metrics-histogram/weather/histogram
+
+##### Response:
+
+    {
+        "count":15,
+        "max":55,
+        "mean":44.4,
+        "min":27,
+        "p50":45.0,
+        "p75":46.0,
+        "p95":54.0,
+        "p98":54.0,
+        "p99":54.0,
+        "p999":54.0,
+        "stddev":7.0710678118654755,
+        "unit":"degrees F"
+    } 
+
+#### Histogram Feature
+Microprofile metrics has a feature create a histogram of data.
+
+To use this feature, inject a MetricRegistry, register the Histogram, and add data to the histogram as shown below.
+
+    @Inject
+    private MetricRegistry registry;
+
+    @Inject
+    @Metric(name = "temperatures", description = "A histogram metrics example.",
+        displayName = "Histogram of Recent New York Temperatures")
+    private Histogram histogram;
+
+    @Path("/histogram")
+    @GET
+    @Produces(MediaType.APPLICATION_JSON)
+    public Histogram getTemperatures() {
+        Metadata metadata = new Metadata("temperatures", MetricType.HISTOGRAM, "degrees F");
+        metadata.setDescription("A histogram of recent New York temperatures.");
+        final int[] RECENT_NEW_YORK_TEMPS = { 46, 45, 50, 46, 45, 27, 30, 48, 55, 54, 45, 41, 45, 43, 46 };
+        histogram = registry.histogram(metadata);
+        for(int temp : RECENT_NEW_YORK_TEMPS) {
+            histogram.update(temp);
+        }
+        return histogram;
+    }
+
+There are some Histogram configurations defined in the @Metric annotation:
+
+**String name**
+Optional. The name of the metric. If not explicitly given the name of the annotated object is used.
+
+**String displayName**
+Optional. A human readable display name for metadata.
+
+**String description**
+Optional. A description of the metric.
+
+**String[] tags**
+Optional. An array of Strings in the <key>=<value> format to supply special tags to a metric.
+
+**boolean reusable**
+Denotes if a metric with a certain name can be registered in more than one place. Does not apply to gauges or histograms.
+
+##### For the histogram status:
+
+    GET http://localhost:8080/mp-metrics-histogram/weather/histogram/status`
+
+##### Reponse:
+     
+     Here are the most recent New York City temperatures.
+
+##### Expected Prometheus format:
+
+        # TYPE application:temperatures_degrees F summary histogram
+        # TYPE application:temperatures_degrees F_count histogram
+        application:temperatures_degrees F_count 15.0
+        # TYPE application:temperatures_min_degrees F histogram
+        application:temperatures_min_degrees F 27.0
+        # TYPE application:temperatures_max_degrees F histogram
+        application:temperatures_max_degrees F 55.0
+        # TYPE application:temperatures_mean_degrees F histogram
+        application:temperatures_mean_degrees F 44.4
+        # TYPE application:temperatures_stddev_degrees F histogram
+        application:temperatures_stddev_degrees F 7.0710678118654755
+        # TYPE application:temperatures_degrees F histogram
+        application:temperatures_degrees F{quantile="0.5"} 45.0
+        # TYPE application:temperatures_degrees F histogram
+        application:temperatures_degrees F{quantile="0.75"} 46.0
+        # TYPE application:temperatures_degrees F histogram
+        application:temperatures_degrees F{quantile="0.95"} 54.0
+        # TYPE application:temperatures_degrees F histogram
+        application:temperatures_degrees F{quantile="0.98"} 54.0
+        # TYPE application:temperatures_degrees F histogram
+        application:temperatures_degrees F{quantile="0.99"} 54.0
+        # TYPE application:temperatures_degrees F histogram
+        application:temperatures_degrees F{quantile="0.999"} 54.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures summary histogram
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures_count histogram
+        application:org_superbiz_histogram_weather_service_temperatures_count 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures_min histogram
+        application:org_superbiz_histogram_weather_service_temperatures_min 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures_max histogram
+        application:org_superbiz_histogram_weather_service_temperatures_max 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures_mean histogram
+        application:org_superbiz_histogram_weather_service_temperatures_mean NaN
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures_stddev histogram
+        application:org_superbiz_histogram_weather_service_temperatures_stddev 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+        application:org_superbiz_histogram_weather_service_temperatures{quantile="0.5"} 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+        application:org_superbiz_histogram_weather_service_temperatures{quantile="0.75"} 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+        application:org_superbiz_histogram_weather_service_temperatures{quantile="0.95"} 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+        application:org_superbiz_histogram_weather_service_temperatures{quantile="0.98"} 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+        application:org_superbiz_histogram_weather_service_temperatures{quantile="0.99"} 0.0
+        # TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+        application:org_superbiz_histogram_weather_service_temperatures{quantile="0.999"} 0.0
+
+##### Request:
+
+    curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/application
+
+##### Response:
+
+    {
+        "org.superbiz.histogram.WeatherService.temperatures": {
+            "count":0,
+            "max":0,
+            "min":0,
+            "p50":0.0,
+            "p75":0.0,
+            "p95":0.0,
+            "p98":0.0,
+            "p99":0.0,
+            "p999":0.0,
+            "stddev":0.0,
+            "unit":"none"
+        }
+    }  
+   
+#### Metric Metadata:
+A metric will have a metadata to provide information about it such as displayName, description, tags, etc.
+
+##### Request:
+
+    curl -X OPTIONS http://localhost:8080/mp-metrics-histogram/metrics/application
+
+##### Response:
+
+    {
+        "org.superbiz.histogram.WeatherService.temperatures": {
+            "description": "A histogram metrics example.",
+            "displayName":"Histogram of Recent New York Temperatures",
+            "name":"org.superbiz.histogram.WeatherService.temperatures",
+            "reusable":false,
+            "tags":"",
+            "type":"histogram",
+            "typeRaw":"HISTOGRAM",
+            "unit":"none"
+        }
+    }
+
+##### Test the application:
+
+    mvn test

http://git-wip-us.apache.org/repos/asf/tomee/blob/d1e06dbb/examples/mp-metrics-histogram/pom.xml
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/pom.xml b/examples/mp-metrics-histogram/pom.xml
new file mode 100644
index 0000000..8721745
--- /dev/null
+++ b/examples/mp-metrics-histogram/pom.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<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-histogram</artifactId>
+    <packaging>war</packaging>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.tomee</groupId>
+            <artifactId>javaee-api</artifactId>
+            <version>${version.javaee-api}</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.eclipse.microprofile.metrics</groupId>
+            <artifactId>microprofile-metrics-api</artifactId>
+            <version>${microprofile.metrics.version}</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>${version.arquillian.bom}</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>${project.version}</version>
+                <configuration>
+                    <tomeeClassifier>microprofile</tomeeClassifier>
+                    <context>${artifactId}</context>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>

http://git-wip-us.apache.org/repos/asf/tomee/blob/d1e06dbb/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java b/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java
new file mode 100644
index 0000000..79a264b
--- /dev/null
+++ b/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java
@@ -0,0 +1,67 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.superbiz.histogram;
+
+import org.eclipse.microprofile.metrics.Histogram;
+import org.eclipse.microprofile.metrics.Metadata;
+import org.eclipse.microprofile.metrics.MetricRegistry;
+import org.eclipse.microprofile.metrics.MetricType;
+import org.eclipse.microprofile.metrics.annotation.Metric;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.inject.Inject;
+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 {
+
+    @Inject
+    private MetricRegistry registry;
+
+    @Inject
+    @Metric(name = "temperatures", description = "A histogram metrics example.",
+        displayName = "Histogram of Recent New York Temperatures")
+    private Histogram histogram;
+
+    @Path("/histogram")
+    @GET
+    @Produces(MediaType.APPLICATION_JSON)
+    public Histogram getTemperatures() {
+        Metadata metadata = new Metadata("temperatures", MetricType.HISTOGRAM, "degrees F");
+        metadata.setDescription("A histogram of recent New York temperatures.");
+        final int[] RECENT_NEW_YORK_TEMPS = { 46, 45, 50, 46, 45, 27, 30, 48, 55, 54, 45, 41, 45, 43, 46 };
+        histogram = registry.histogram(metadata);
+        for(int temp : RECENT_NEW_YORK_TEMPS) {
+            histogram.update(temp);
+        }
+        return histogram;
+    }
+
+    @Path("/histogram/status")
+    @GET
+    @Produces(MediaType.TEXT_PLAIN)
+    public String histogramStatus() {
+        return "Here are the most recent New York City temperatures.";
+    }
+}

http://git-wip-us.apache.org/repos/asf/tomee/blob/d1e06dbb/examples/mp-metrics-histogram/src/test/java/org/superbiz/histogram/WeatherServiceTest.java
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/src/test/java/org/superbiz/histogram/WeatherServiceTest.java b/examples/mp-metrics-histogram/src/test/java/org/superbiz/histogram/WeatherServiceTest.java
new file mode 100644
index 0000000..1f27616
--- /dev/null
+++ b/examples/mp-metrics-histogram/src/test/java/org/superbiz/histogram/WeatherServiceTest.java
@@ -0,0 +1,167 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.superbiz.histogram;
+
+import org.jboss.arquillian.container.test.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.arquillian.test.api.ArquillianResource;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.asset.StringAsset;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import javax.json.Json;
+import javax.json.JsonObject;
+
+import javax.ws.rs.client.Client;
+import javax.ws.rs.client.ClientBuilder;
+import javax.ws.rs.client.WebTarget;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+
+import java.io.StringReader;
+
+import java.net.URL;
+import java.util.stream.Stream;
+
+import static junit.framework.TestCase.assertTrue;
+import static org.junit.Assert.assertEquals;
+
+@RunWith(Arquillian.class)
+public class WeatherServiceTest {
+
+    @Deployment(testable = false)
+    public static WebArchive createDeployment() {
+        final WebArchive webArchive = ShrinkWrap.create(WebArchive.class, "test.war")
+                .addClass(WeatherService.class)
+                .addAsWebInfResource(new StringAsset("<beans/>"), "beans.xml");
+        return webArchive;
+    }
+
+    @ArquillianResource
+    private URL base;
+
+    private Client client;
+
+    @Before
+    public void before() {
+        this.client = ClientBuilder.newClient();
+    }
+
+    @After
+    public void after() {
+        this.client.close();
+    }
+
+    @Test
+    public void testHistogramMetric() {
+        WebTarget webTarget = this.client.target(this.base.toExternalForm());
+        final String message =  webTarget.path("/weather/histogram")
+                .request()
+                .get(String.class);
+        final String metricPath = "/metrics/application";
+        assertPrometheusFormat(metricPath);
+        assertJsonFormat(metricPath);
+    }
+
+    private void assertPrometheusFormat(final String metricPath) {
+        WebTarget webTarget = this.client.target(this.base.toExternalForm());
+        final String metric = webTarget.path(metricPath)
+                .request()
+                .accept(MediaType.TEXT_PLAIN)
+                .get(String.class);
+        final String expected = "# TYPE application:temperatures_degrees F summary histogram\n" +
+                "# TYPE application:temperatures_degrees F_count histogram\n" +
+                "application:temperatures_degrees F_count 15.0\n" +
+                "# TYPE application:temperatures_min_degrees F histogram\n" +
+                "application:temperatures_min_degrees F 27.0\n" +
+                "# TYPE application:temperatures_max_degrees F histogram\n" +
+                "application:temperatures_max_degrees F 55.0\n" +
+                "# TYPE application:temperatures_mean_degrees F histogram\n" +
+                "application:temperatures_mean_degrees F 44.4\n" +
+                "# TYPE application:temperatures_stddev_degrees F histogram\n" +
+                "application:temperatures_stddev_degrees F 7.0710678118654755\n" +
+                "# TYPE application:temperatures_degrees F histogram\n" +
+                "application:temperatures_degrees F{quantile=\"0.5\"} 45.0\n" +
+                "# TYPE application:temperatures_degrees F histogram\n" +
+                "application:temperatures_degrees F{quantile=\"0.75\"} 46.0\n" +
+                "# TYPE application:temperatures_degrees F histogram\n" +
+                "application:temperatures_degrees F{quantile=\"0.95\"} 54.0\n" +
+                "# TYPE application:temperatures_degrees F histogram\n" +
+                "application:temperatures_degrees F{quantile=\"0.98\"} 54.0\n" +
+                "# TYPE application:temperatures_degrees F histogram\n" +
+                "application:temperatures_degrees F{quantile=\"0.99\"} 54.0\n" +
+                "# TYPE application:temperatures_degrees F histogram\n" +
+                "application:temperatures_degrees F{quantile=\"0.999\"} 54.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures summary histogram\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures_count histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures_count 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures_min histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures_min 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures_max histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures_max 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures_mean histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures_mean NaN\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures_stddev histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures_stddev 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures{quantile=\"0.5\"} 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures{quantile=\"0.75\"} 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures{quantile=\"0.95\"} 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures{quantile=\"0.98\"} 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures{quantile=\"0.99\"} 0.0\n" +
+                "# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram\n" +
+                "application:org_superbiz_histogram_weather_service_temperatures{quantile=\"0.999\"} 0.0\n";
+        assertEquals(expected, metric);
+    }
+
+    private void assertJsonFormat(final String metricPath) {
+        WebTarget webTarget = this.client.target(this.base.toExternalForm());
+        final String metric = webTarget.path(metricPath)
+                .request()
+                .accept(MediaType.APPLICATION_JSON)
+                .get(String.class);
+        final String expected = "{\"temperatures\":{\"count\":15,\"max\":55,\"mean\":44.4,\"min\":27,\"p50\":45.0,\"p75\":46.0,\"p95\":54.0,\"p98\":54.0,\"p99\":54.0,\"p999\":54.0,\"stddev\":7.0710678118654755,\"unit\":\"degrees F\"},\"org.superbiz.histogram.WeatherService.temperatures\":{\"count\":0,\"max\":0,\"min\":0,\"p50\":0.0,\"p75\":0.0,\"p95\":0.0,\"p98\":0.0,\"p99\":0.0,\"p999\":0.0,\"stddev\":0.0,\"unit\":\"none\"}}";
+        assertEquals(expected, metric);
+    }
+
+    @Test
+    public void testHistogramMetricMetadata() {
+        WebTarget webTarget = this.client.target(this.base.toExternalForm());
+        final Response response = webTarget
+                .path("/metrics/application")
+                .request()
+                .accept(MediaType.APPLICATION_JSON)
+                .options();
+        final String metaData = response.readEntity(String.class);
+
+        JsonObject metadataJson = Json.createReader(new StringReader(metaData)).readObject();
+        final String expected = "{\"temperatures\":{\"description\":\"A histogram of recent New York temperatures.\",\"displayName\":\"temperatures\",\"name\":\"temperatures\",\"reusable\":false,\"tags\":\"\",\"type\":\"histogram\",\"typeRaw\":\"HISTOGRAM\",\"unit\":\"degrees F\"},\"org.superbiz.histogram.WeatherService.temperatures\":{\"description\":\"A histogram metrics example.\",\"displayName\":\"Histogram of Recent New York Temperatures\",\"name\":\"org.superbiz.histogram.WeatherService.temperatures\",\"reusable\":false,\"tags\":\"\",\"type\":\"histogram\",\"typeRaw\":\"HISTOGRAM\",\"unit\":\"none\"}}";
+
+        JsonObject expectedJson = Json.createReader(new StringReader(expected)).readObject();
+        assertEquals(expectedJson, metadataJson);
+        assertEquals(expectedJson.keySet().size(), metadataJson.keySet().size());
+    }
+}

http://git-wip-us.apache.org/repos/asf/tomee/blob/d1e06dbb/examples/mp-metrics-histogram/src/test/resources/arquillian.xml
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/src/test/resources/arquillian.xml b/examples/mp-metrics-histogram/src/test/resources/arquillian.xml
new file mode 100644
index 0000000..3029d48
--- /dev/null
+++ b/examples/mp-metrics-histogram/src/test/resources/arquillian.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<arquillian xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+  <container qualifier="tomee" default="true">
+    <configuration>
+      <property name="httpPort">-1</property>
+      <property name="stopPort">-1</property>
+      <property name="classifier">microprofile</property>
+      <property name="dir">target/apache-tomee-remote</property>
+      <property name="appWorkingDir">target/arquillian-test-working-dir</property>
+    </configuration>
+  </container>
+</arquillian>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tomee/blob/d1e06dbb/examples/mp-metrics-histogram/url-output.txt
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/url-output.txt b/examples/mp-metrics-histogram/url-output.txt
new file mode 100644
index 0000000..2963b78
--- /dev/null
+++ b/examples/mp-metrics-histogram/url-output.txt
@@ -0,0 +1,164 @@
+Last login: Tue Dec  4 18:42:11 on ttys001
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/health
+{"checks":[],"outcome":"UP","status":"UP"}%                                                                                                                         ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics
+# TYPE application:org_superbiz_histogram_weather_service_temperatures summary histogram
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_count histogram
+application:org_superbiz_histogram_weather_service_temperatures_count 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_min histogram
+application:org_superbiz_histogram_weather_service_temperatures_min 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_max histogram
+application:org_superbiz_histogram_weather_service_temperatures_max 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_mean histogram
+application:org_superbiz_histogram_weather_service_temperatures_mean NaN
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_stddev histogram
+application:org_superbiz_histogram_weather_service_temperatures_stddev 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.5"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.75"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.95"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.98"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.99"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.999"} 0.0
+# TYPE base:gc_g1_young_generation_count counter
+base:gc_g1_young_generation_count 12.0
+# TYPE base:classloader_total_loaded_class_count counter
+base:classloader_total_loaded_class_count 9278.0
+# TYPE base:thread_count counter
+base:thread_count 39.0
+# TYPE base:gc_g1_old_generation_count counter
+base:gc_g1_old_generation_count 0.0
+# TYPE base:gc_g1_old_generation_time_seconds gauge
+base:gc_g1_old_generation_time_seconds 0.0
+# TYPE base:classloader_current_loaded_class_count counter
+base:classloader_current_loaded_class_count 9277.0
+# TYPE base:jvm_uptime_seconds gauge
+base:jvm_uptime_seconds 0.775262
+# TYPE base:thread_max_count counter
+base:thread_max_count 39.0
+# TYPE base:memory_committed_heap_bytes gauge
+base:memory_committed_heap_bytes 1.09051904E8
+# TYPE base:cpu_available_processors gauge
+base:cpu_available_processors 8.0
+# TYPE base:thread_daemon_count counter
+base:thread_daemon_count 38.0
+# TYPE base:gc_g1_young_generation_time_seconds gauge
+base:gc_g1_young_generation_time_seconds 1.24E-4
+# TYPE base:classloader_total_unloaded_class_count counter
+base:classloader_total_unloaded_class_count 9278.0
+# TYPE base:memory_max_heap_bytes gauge
+base:memory_max_heap_bytes 2.147483648E9
+# TYPE base:memory_used_heap_bytes gauge
+base:memory_used_heap_bytes 4.8121048E7
+# TYPE vendor:start_time counter
+vendor:start_time 1.543967001744E12
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/histogram
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/histogram/histogram
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X OPTIONS http://localhost:8080/mp-metrics-histogram/metrics/histogram
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X OPTIONS http://localhost:8080/mp-metrics-histogram/metrics/histogram/histogram
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/openapi
+{"openapi":"3.0.1","paths":{"/health":{"get":{"operationId":"getChecks","parameters":[]}},"/weather/histogram/status":{"get":{"operationId":"histogramStatus","parameters":[]}},"/weather/histogram":{"get":{"operationId":"getTemperatures","parameters":[]}},"/openapi":{"get":{"operationId":"get","parameters":[]}},"/metrics/{registry}":{"get":{"operationId":"getText","parameters":[{"name":"registry","required":true,"schema":{"type":"string"},"style":"simple"}]},"options":{"operationId":"getMetadata","parameters":[{"name":"registry","required":true,"schema":{"type":"string"},"style":"simple"}]}},"/metrics":{"get":{"operationId":"getText","parameters":[]}},"/metrics/{registry}/{metric}":{"get":{"operationId":"getJson","parameters":[{"name":"registry","required":true,"schema":{"type":"string"},"style":"simple"},{"name":"metric","required":true,"schema":{"type":"string"},"style":"simple"}]},"options":{"operationId":"getMetadata","parameters":[{"name":"registry","required":true,"schema":{"ty
 pe":"string"},"style":"simple"},{"name":"metric","required":true,"schema":{"type":"string"},"style":"simple"}]}}}}%                                    ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X OPTIONS http://localhost:8080/mp-metrics-histogram/metrics/registry/metric
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/weather/histogram
+{"count":15,"max":55,"mean":44.4,"min":27,"p50":45.0,"p75":46.0,"p95":54.0,"p98":54.0,"p99":54.0,"p999":54.0,"stddev":7.0710678118654755,"unit":"degrees F"}%       ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/weather/histogram/status
+Here are the most recent New York City temperatures.%                                                                                                               ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/application
+# TYPE application:temperatures_degrees F summary histogram
+# TYPE application:temperatures_degrees F_count histogram
+application:temperatures_degrees F_count 15.0
+# TYPE application:temperatures_min_degrees F histogram
+application:temperatures_min_degrees F 27.0
+# TYPE application:temperatures_max_degrees F histogram
+application:temperatures_max_degrees F 55.0
+# TYPE application:temperatures_mean_degrees F histogram
+application:temperatures_mean_degrees F 44.4
+# TYPE application:temperatures_stddev_degrees F histogram
+application:temperatures_stddev_degrees F 7.0710678118654755
+# TYPE application:temperatures_degrees F histogram
+application:temperatures_degrees F{quantile="0.5"} 45.0
+# TYPE application:temperatures_degrees F histogram
+application:temperatures_degrees F{quantile="0.75"} 46.0
+# TYPE application:temperatures_degrees F histogram
+application:temperatures_degrees F{quantile="0.95"} 54.0
+# TYPE application:temperatures_degrees F histogram
+application:temperatures_degrees F{quantile="0.98"} 54.0
+# TYPE application:temperatures_degrees F histogram
+application:temperatures_degrees F{quantile="0.99"} 54.0
+# TYPE application:temperatures_degrees F histogram
+application:temperatures_degrees F{quantile="0.999"} 54.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures summary histogram
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_count histogram
+application:org_superbiz_histogram_weather_service_temperatures_count 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_min histogram
+application:org_superbiz_histogram_weather_service_temperatures_min 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_max histogram
+application:org_superbiz_histogram_weather_service_temperatures_max 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_mean histogram
+application:org_superbiz_histogram_weather_service_temperatures_mean NaN
+# TYPE application:org_superbiz_histogram_weather_service_temperatures_stddev histogram
+application:org_superbiz_histogram_weather_service_temperatures_stddev 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.5"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.75"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.95"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.98"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.99"} 0.0
+# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
+application:org_superbiz_histogram_weather_service_temperatures{quantile="0.999"} 0.0
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/base
+# TYPE base:gc_g1_young_generation_count counter
+base:gc_g1_young_generation_count 12.0
+# TYPE base:classloader_total_loaded_class_count counter
+base:classloader_total_loaded_class_count 9320.0
+# TYPE base:thread_count counter
+base:thread_count 39.0
+# TYPE base:gc_g1_old_generation_count counter
+base:gc_g1_old_generation_count 0.0
+# TYPE base:gc_g1_old_generation_time_seconds gauge
+base:gc_g1_old_generation_time_seconds 0.0
+# TYPE base:classloader_current_loaded_class_count counter
+base:classloader_current_loaded_class_count 9319.0
+# TYPE base:jvm_uptime_seconds gauge
+base:jvm_uptime_seconds 1.180734
+# TYPE base:thread_max_count counter
+base:thread_max_count 39.0
+# TYPE base:memory_committed_heap_bytes gauge
+base:memory_committed_heap_bytes 1.09051904E8
+# TYPE base:cpu_available_processors gauge
+base:cpu_available_processors 8.0
+# TYPE base:thread_daemon_count counter
+base:thread_daemon_count 38.0
+# TYPE base:gc_g1_young_generation_time_seconds gauge
+base:gc_g1_young_generation_time_seconds 1.24E-4
+# TYPE base:classloader_total_unloaded_class_count counter
+base:classloader_total_unloaded_class_count 9320.0
+# TYPE base:memory_max_heap_bytes gauge
+base:memory_max_heap_bytes 2.147483648E9
+# TYPE base:memory_used_heap_bytes gauge
+base:memory_used_heap_bytes 4.8121048E7
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/vendor
+# TYPE vendor:start_time counter
+vendor:start_time 1.543967001744E12
+╭─mpredli01@Michaels-MacBook-Pro-4.local ~
+╰─➤


[4/6] tomee git commit: Merge remote-tracking branch 'upstream/master'

Posted by jg...@apache.org.
Merge remote-tracking branch 'upstream/master'


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/f6d3dab3
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/f6d3dab3
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/f6d3dab3

Branch: refs/heads/master
Commit: f6d3dab30a97d66aa0378bc723e747eb41f6861b
Parents: b2802b9 004ad51
Author: Michael P. Redlich <mi...@redlich.net>
Authored: Mon Dec 10 19:45:50 2018 -0500
Committer: Michael P. Redlich <mi...@redlich.net>
Committed: Mon Dec 10 19:45:50 2018 -0500

----------------------------------------------------------------------
 .../arquillian/common/TomEEContainer.java       |   4 +
 .../arquillian/remote/RemoteTomEEContainer.java |   3 +
 .../arquillian/tests/cmp/CmpMappingTest.java    |  58 ++++
 .../arquillian/tests/cmp/CmpServlet.java        |   2 +-
 .../openejb/assembler/classic/Assembler.java    |   4 +-
 .../openejb/assembler/classic/EjbResolver.java  |   2 +-
 .../openejb/assembler/classic/JndiBuilder.java  |   2 +-
 .../openejb/cdi/ManagedSecurityService.java     |  49 +++
 .../openejb/cdi/ThreadSingletonServiceImpl.java |   2 +
 .../java/org/apache/openejb/cli/Bootstrap.java  |   6 +-
 .../java/org/apache/openejb/cli/MainImpl.java   |   6 +-
 .../openejb/config/AnnotationDeployer.java      |  28 +-
 .../apache/openejb/config/CmpJpaConversion.java |   4 +-
 .../openejb/config/EjbJarInfoBuilder.java       |   4 +-
 .../openejb/config/InitEjbDeployments.java      |   2 +-
 .../config/PersistenceContextAnnFactory.java    |   2 +-
 .../openejb/config/QuickServerXmlParser.java    |   2 +-
 .../org/apache/openejb/config/ServiceUtils.java |  12 +-
 .../openejb/core/ivm/naming/IvmContext.java     |  10 +-
 .../openejb/core/timer/EJBCronTrigger.java      |   2 +-
 .../openejb/core/webservices/JaxWsUtils.java    |   6 +-
 .../resource/jdbc/dbcp/BasicDataSource.java     |   2 +-
 .../jdbc/dbcp/BasicManagedDataSource.java       |   2 +-
 .../resource/jdbc/router/FailOverRouter.java    |   2 +-
 .../apache/openejb/util/AnnotationFinder.java   |   8 +-
 .../openejb/util/IntrospectionSupport.java      |   2 +-
 .../apache/openejb/util/Log4jPrintWriter.java   |   4 +-
 .../java/org/apache/openejb/util/Logger.java    |   4 +-
 .../apache/openejb/util/LoggingPrintWriter.java |   4 +-
 .../java/org/apache/openejb/util/Messages.java  |   2 +-
 .../java/org/apache/openejb/util/Strings.java   |   2 +-
 .../org/apache/openejb/util/URISupport.java     |  10 +-
 .../org/apache/openejb/util/UpdateChecker.java  |   2 +-
 .../java/org/apache/openejb/util/UrlCache.java  |   2 +-
 .../util/proxy/LocalBeanProxyFactory.java       |   2 +-
 .../openejb/web/LightweightWebAppBuilder.java   |   2 +-
 .../config/rules/ValidationKeysAuditorTest.java |   4 +-
 .../org/apache/openejb/javaagent/Agent.java     |   2 +-
 .../jee/HandlerChainsStringQNameAdapter.java    |   2 +-
 .../openejb/jee/oejb2/NamespaceFilter.java      |   2 +-
 .../java/org/apache/openejb/loader/Options.java |  12 +-
 .../loader/provisining/MavenResolver.java       |   2 +-
 docs/application-deployment-solutions.adoc      |   2 +-
 docs/common-datasource-configurations.adoc      |   2 +-
 docs/datasource-password-encryption.adoc        |   2 +-
 docs/details-on-openejb-jar.adoc                |   2 +-
 docs/dynamic-datasource.adoc                    |   2 +-
 docs/ejb-local-ref.adoc                         |   2 +-
 docs/ejb-ref.adoc                               |   2 +-
 docs/ejb-refs.adoc                              |   2 +-
 docs/ejb-request-logging.adoc                   |   2 +-
 docs/generating-ejb-3-annotations.adoc          |   2 +-
 docs/lookup-of-other-ejbs-example.adoc          |   2 +-
 docs/new-in-openejb-3.0.adoc                    |   1 +
 docs/openejb-3.adoc                             |   2 +-
 docs/openejb-binaries.adoc                      |   2 +-
 docs/openejb-eclipse-plugin.adoc                |   2 +-
 docs/openejb-jsr-107-integration.adoc           |   2 +-
 docs/openejb.xml.adoc                           |   1 +
 docs/provisioning.adoc                          |   2 +-
 docs/running-a-standalone-openejb-server.adoc   |   2 +-
 docs/singleton-ejb.adoc                         |   2 +-
 docs/spring-and-openejb-3.0.adoc                |   1 +
 examples/applicationcomposer-jaxws-cdi/pom.xml  |   2 +-
 examples/arquillian-jpa/pom.xml                 | 227 +++++++------
 .../test/persistence/PersistenceTest.java       |  40 ++-
 .../connector/starter/api/SampleConnection.java |  26 --
 .../starter/api/SampleConnectionFactory.java    |  28 --
 .../adapter/SampleConnectionFactoryImpl.java    |  69 ----
 .../starter/adapter/SampleConnectionImpl.java   |  44 ---
 .../adapter/SampleManagedConnection.java        | 139 --------
 .../adapter/SampleManagedConnectionFactory.java | 108 ------
 .../SampleManagedConnectionMetaData.java        |  58 ----
 .../connector-starter-rar/pom.xml               |  43 ---
 .../connector-ear-sample/moviefun-ear/pom.xml   |  74 -----
 examples/ear-testing/business-logic/pom.xml     |   2 +-
 examples/ear-testing/business-model/pom.xml     |   2 +-
 examples/ear-testing/pom.xml                    |   2 +-
 examples/javamail/pom.xml                       |   2 +-
 examples/mp-config-example/README.md            |  46 +++
 examples/mp-config-example/pom.xml              |  92 ++++++
 .../org/superbiz/config/PropertiesRest.java     |  80 +++++
 .../src/main/resources/META-INF/beans.xml       |   0
 .../META-INF/microprofile-config.properties     |   3 +
 .../org/superbiz/config/PropertiesRestTest.java |  53 +++
 .../src/test/resources/arquillian.xml           |  30 ++
 examples/mp-faulttolerance-retry/pom.xml        |  42 ++-
 examples/mp-metrics-counted/pom.xml             |  33 +-
 .../src/main/webapp/WEB-INF/web.xml             |  25 ++
 examples/mp-metrics-timed/pom.xml               |  37 ++-
 .../src/main/webapp/WEB-INF/web.xml             |  25 ++
 examples/mvc-cxf/pom.xml                        |   8 +
 examples/pom.xml                                |   3 +-
 mp-jwt/pom.xml                                  |  12 +
 .../tomee/microprofile/jwt/MPJWTFilter.java     |  52 ++-
 .../tomee/microprofile/jwt/cdi/ClaimBean.java   |  19 +-
 .../microprofile/jwt/cdi/MPJWTCDIExtension.java |  41 ++-
 .../config/ConfigurableJWTAuthContextInfo.java  | 326 +++++++++++++++++++
 .../jwt/config/JWTAuthContextInfo.java          |  66 ++--
 .../principal/DefaultJWTCallerPrincipal.java    |   2 +
 .../DefaultJWTCallerPrincipalFactory.java       |  11 +-
 .../jwt/principal/JWTCallerPrincipal.java       |   2 +
 .../META-INF/org.apache.openejb.extension       |   1 +
 pom.xml                                         |   5 +-
 tck/microprofile-tck/jwt/pom.xml                |  14 +
 .../jwt/AppDeploymentExtension.java             |  77 -----
 .../jwt/JWTAuthContextInfoProvider.java         |  63 ----
 .../tomee/microprofile/jwt/TCKTokenParser.java  |  40 ---
 .../tck/jwt/JWTAuthContextInfoProvider.java     |  56 ++++
 .../jwt/MicroProfileJWTTCKArchiveProcessor.java | 123 +++++++
 .../tck/jwt/MicroProfileJWTTCKExtension.java    |  29 ++
 .../tck/jwt/config/KeyApplication.java          |  27 ++
 .../config/PublicKeyAsJWKLocationURLTest.java   | 178 ++++++++++
 .../jwt/config/PublicKeyAsPEMLocationTest.java  | 161 +++++++++
 .../tck/jwt/jwk/PublicKeyAsJWKSTest.java        |  85 +++++
 ...lipse.microprofile.jwt.tck.util.ITokenParser |   1 -
 ....jboss.arquillian.core.spi.LoadableExtension |   2 +-
 .../jwt/src/test/resources/arquillian.xml       |  41 +--
 .../jwt/src/test/resources/dev.xml              |  59 ++--
 .../jwt/src/test/resources/publicKey4k.pem      |  14 +
 .../jwt/src/test/resources/signer-keyset4k.jwk  |  12 +
 .../tomee/catalina/TomcatSecurityService.java   |   6 +-
 .../tomee-microprofile-webapp/pom.xml           |   6 +
 123 files changed, 2098 insertions(+), 1099 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/f6d3dab3/examples/pom.xml
----------------------------------------------------------------------


[6/6] tomee git commit: Merge branch 'master' of github.com:mpredli01/tomee

Posted by jg...@apache.org.
Merge branch 'master' of github.com:mpredli01/tomee


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/64ed4189
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/64ed4189
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/64ed4189

Branch: refs/heads/master
Commit: 64ed4189ed2c64a1bac9cd27def774b257c3aa4a
Parents: cad956d a6b66e1
Author: Jonathan Gallimore <jo...@jrg.me.uk>
Authored: Fri Dec 14 21:38:44 2018 +0000
Committer: Jonathan Gallimore <jo...@jrg.me.uk>
Committed: Fri Dec 14 21:38:44 2018 +0000

----------------------------------------------------------------------
 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                                |   5 +-
 9 files changed, 700 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/64ed4189/examples/pom.xml
----------------------------------------------------------------------


[3/6] tomee git commit: Add module to represent the new Metrics Histogram example in examples/pom.xml

Posted by jg...@apache.org.
Add module to represent the new Metrics Histogram example in examples/pom.xml


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/b2802b94
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/b2802b94
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/b2802b94

Branch: refs/heads/master
Commit: b2802b9438eb34bec4efc33aac10850c5c12b9f5
Parents: 9478ca9
Author: Michael P. Redlich <mi...@redlich.net>
Authored: Sun Dec 9 18:37:16 2018 -0500
Committer: Michael P. Redlich <mi...@redlich.net>
Committed: Sun Dec 9 18:37:16 2018 -0500

----------------------------------------------------------------------
 examples/mp-opentracing-traced/pom.xml          | 88 ++++++++++++++++++++
 .../src/test/resources/arquillian.xml           | 30 +++++++
 examples/pom.xml                                |  5 +-
 3 files changed, 121 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/b2802b94/examples/mp-opentracing-traced/pom.xml
----------------------------------------------------------------------
diff --git a/examples/mp-opentracing-traced/pom.xml b/examples/mp-opentracing-traced/pom.xml
new file mode 100644
index 0000000..d6329e0
--- /dev/null
+++ b/examples/mp-opentracing-traced/pom.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<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-opentracing.traced</artifactId>
+    <packaging>war</packaging>
+
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.tomee</groupId>
+            <artifactId>javaee-api</artifactId>
+            <version>${version.javaee-api}</version>
+            <scope>provided</scope>
+        </dependency>
+        <!-- <dependency> // unncecessary metrics dependency
+            <groupId>org.eclipse.microprofile.metrics</groupId>
+            <artifactId>microprofile-metrics-api</artifactId>
+            <version>${microprofile.metrics.version}</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>${version.arquillian.bom}</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>${project.version}</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/b2802b94/examples/mp-opentracing-traced/src/test/resources/arquillian.xml
----------------------------------------------------------------------
diff --git a/examples/mp-opentracing-traced/src/test/resources/arquillian.xml b/examples/mp-opentracing-traced/src/test/resources/arquillian.xml
new file mode 100644
index 0000000..3029d48
--- /dev/null
+++ b/examples/mp-opentracing-traced/src/test/resources/arquillian.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<arquillian xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+  <container qualifier="tomee" default="true">
+    <configuration>
+      <property name="httpPort">-1</property>
+      <property name="stopPort">-1</property>
+      <property name="classifier">microprofile</property>
+      <property name="dir">target/apache-tomee-remote</property>
+      <property name="appWorkingDir">target/arquillian-test-working-dir</property>
+    </configuration>
+  </container>
+</arquillian>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tomee/blob/b2802b94/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index e7cb451..9437790 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -102,6 +102,9 @@ BROKEN, see TOMEE-2140
     <module>mbean-auto-registration</module>
     <module>movies-complete-meta</module>
     <module>movies-complete</module>
+    <module>mp-metrics-counted</module>
+    <module>mp-metrics-histogram</module>
+    <module>mp-metrics-timed</module>
     <module>mtom</module>
     <module>multi-jpa-provider-testing</module>
     <module>multiple-arquillian-adapters</module>
@@ -171,8 +174,6 @@ BROKEN, see TOMEE-2140
     <module>moviefun</module>
     <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>


[2/6] tomee git commit: Merge remote-tracking branch 'upstream/master'

Posted by jg...@apache.org.
Merge remote-tracking branch 'upstream/master'


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/9478ca91
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/9478ca91
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/9478ca91

Branch: refs/heads/master
Commit: 9478ca91d7529a41b8589b2f1da8bf23115d205d
Parents: d1e06db e504c4d
Author: Michael P. Redlich <mi...@redlich.net>
Authored: Sun Dec 9 18:27:07 2018 -0500
Committer: Michael P. Redlich <mi...@redlich.net>
Committed: Sun Dec 9 18:27:07 2018 -0500

----------------------------------------------------------------------
 .gitignore                                      |    1 +
 .../arquillian-tomee-webprofile-tests/pom.xml   |    2 +-
 .../arquillian/tests/cmp/CmpMappingTest.java    |   58 -
 .../arquillian/tests/cmp/CmpServlet.java        |    2 +-
 .../arquillian/tests/cmp/sample/ActorBean.java  |   70 +
 .../tests/cmp/sample/ActorDetails.java          |   39 +
 .../tests/cmp/sample/CustomOrmXmlTest.java      |   76 +
 .../arquillian/tests/cmp/sample/LocalActor.java |   29 +
 .../tests/cmp/sample/LocalActorHome.java        |   31 +
 .../arquillian/tests/cmp/sample/LocalMovie.java |   39 +
 .../tests/cmp/sample/LocalMovieHome.java        |   33 +
 .../arquillian/tests/cmp/sample/MovieBean.java  |  118 +
 .../tests/cmp/sample/MovieDetails.java          |   45 +
 .../tests/cmp/sample/MoviesBusiness.java        |   25 +
 .../tests/cmp/sample/MoviesBusinessBean.java    |   80 +
 .../tests/cmp/sample/MoviesBusinessHome.java    |   27 +
 .../tests/cmp/sample/MoviesServlet.java         |   91 +
 .../securityejb/SecurityEJBPropagationTest.java |    4 +-
 .../src/test/resources/arquillian.xml           |    2 +
 .../arquillian/tests/cmp/sample/custom-orm.xml  |   54 +
 .../arquillian/tests/cmp/sample/ejb-jar.xml     |  164 +
 .../arquillian/tests/cmp/sample/openejb-jar.xml |   34 +
 .../arquillian/tests/cmp/sample/persistence.xml |   32 +
 .../openejb/arquillian/tests/cmp/sample/web.xml |   48 +
 .../src/test/resources/test/context.xml         |   20 +
 .../java/org/apache/openejb/AppContext.java     |    8 +-
 .../java/org/apache/openejb/BeanContext.java    |   87 +-
 .../org/apache/openejb/ClassLoaderUtil.java     |    9 +-
 .../org/apache/openejb/DeploymentContext.java   |    2 +-
 .../org/apache/openejb/InjectionProcessor.java  |    4 +-
 .../java/org/apache/openejb/MethodContext.java  |    6 +-
 .../org/apache/openejb/OpenEjbContainer.java    |    5 +-
 .../org/apache/openejb/UndeployException.java   |    2 +-
 .../openejb/assembler/classic/Assembler.java    |   93 +-
 .../assembler/classic/ClassListInfo.java        |    2 +-
 .../openejb/assembler/classic/ClientInfo.java   |   10 +-
 .../assembler/classic/CmpJarBuilder.java        |    2 +-
 .../assembler/classic/ConnectorInfo.java        |   12 +-
 .../assembler/classic/ContainerSystemInfo.java  |    6 +-
 .../classic/DelegatePermissionCollection.java   |    4 +-
 .../assembler/classic/DeployTimeEnhancer.java   |   10 +-
 .../assembler/classic/EjbJarBuilder.java        |    2 +-
 .../openejb/assembler/classic/EjbJarInfo.java   |   24 +-
 .../openejb/assembler/classic/EjbResolver.java  |    8 +-
 .../classic/EnterpriseBeanBuilder.java          |   13 +-
 .../assembler/classic/EnterpriseBeanInfo.java   |   28 +-
 .../assembler/classic/EntityBeanInfo.java       |    6 +-
 .../classic/EntityManagerFactoryCallable.java   |    2 +-
 .../assembler/classic/FacilitiesInfo.java       |   10 +-
 .../assembler/classic/HandlerChainInfo.java     |    4 +-
 .../openejb/assembler/classic/HandlerInfo.java  |    4 +-
 .../assembler/classic/InjectableInfo.java       |    2 +-
 .../assembler/classic/InjectionBuilder.java     |    2 +-
 .../classic/InterceptorBindingBuilder.java      |   20 +-
 .../classic/InterceptorBindingInfo.java         |    4 +-
 .../assembler/classic/InterceptorInfo.java      |   18 +-
 .../classic/JaccPermissionsBuilder.java         |    4 +-
 .../openejb/assembler/classic/JndiBuilder.java  |   18 +-
 .../assembler/classic/JndiEncBuilder.java       |    4 +-
 .../openejb/assembler/classic/JndiEncInfo.java  |   16 +-
 .../assembler/classic/ManagedBeanInfo.java      |    6 +-
 .../classic/MessageDrivenBeanInfo.java          |    2 +-
 .../assembler/classic/MethodAttributeInfo.java  |    2 +-
 .../classic/MethodConcurrencyBuilder.java       |    4 +-
 .../assembler/classic/MethodInfoUtil.java       |   32 +-
 .../assembler/classic/MethodPermissionInfo.java |    2 +-
 .../assembler/classic/MethodScheduleInfo.java   |    2 +-
 .../classic/MethodTransactionBuilder.java       |    2 +-
 .../assembler/classic/PersistenceUnitInfo.java  |    8 +-
 .../assembler/classic/PolicyContext.java        |    2 +-
 .../openejb/assembler/classic/PortInfo.java     |    2 +-
 .../classic/ProxyInterfaceResolver.java         |    8 +-
 .../openejb/assembler/classic/ServiceInfo.java  |    2 +-
 .../assembler/classic/ServiceReferenceInfo.java |    4 +-
 .../openejb/assembler/classic/ServletInfo.java  |    4 +-
 .../assembler/classic/StatefulBeanInfo.java     |   14 +-
 .../assembler/classic/ValidatorBuilder.java     |   10 +-
 .../openejb/assembler/classic/WsBuilder.java    |    4 +-
 .../assembler/classic/util/ServiceInfos.java    |    2 +-
 .../apache/openejb/async/AsynchronousPool.java  |    2 +-
 .../org/apache/openejb/bval/ValidatorUtil.java  |    2 +-
 .../org/apache/openejb/cdi/CdiBeanInfo.java     |   50 +-
 .../java/org/apache/openejb/cdi/CdiEjbBean.java |   12 +-
 .../java/org/apache/openejb/cdi/CdiPlugin.java  |   16 +-
 .../cdi/CdiResourceInjectionService.java        |    2 +-
 .../openejb/cdi/ConstructorInjectionBean.java   |    2 +-
 .../openejb/cdi/CurrentCreationalContext.java   |    2 +-
 .../apache/openejb/cdi/OpenEJBBeanBuilder.java  |    2 +-
 .../openejb/cdi/OptimizedLoaderService.java     |    2 +-
 .../apache/openejb/cdi/WebappBeanManager.java   |    3 +-
 .../CompositeClassLoaderConfigurer.java         |    2 +-
 .../ProvisioningClassLoaderConfigurer.java      |    4 +-
 .../java/org/apache/openejb/cli/Bootstrap.java  |   71 +-
 .../java/org/apache/openejb/cli/MainImpl.java   |    2 +-
 .../openejb/component/ClassLoaderEnricher.java  |    2 +-
 .../openejb/config/AnnotationDeployer.java      |   78 +-
 .../config/AppContextConfigDeployer.java        |    2 +-
 .../apache/openejb/config/AppInfoBuilder.java   |   10 +-
 .../org/apache/openejb/config/AppModule.java    |   34 +-
 .../org/apache/openejb/config/AppValidator.java |    2 +-
 .../org/apache/openejb/config/AutoConfig.java   |  175 +-
 .../org/apache/openejb/config/AutoDeployer.java |    8 +-
 .../openejb/config/BaseConvertDefinitions.java  |    2 +-
 .../apache/openejb/config/BeanProperties.java   |    2 +-
 .../apache/openejb/config/CleanEnvEntries.java  |    2 +-
 .../openejb/config/ClearEmptyMappedName.java    |    2 +-
 .../org/apache/openejb/config/ClientModule.java |    6 +-
 .../apache/openejb/config/CmpJpaConversion.java |  114 +-
 .../config/ConfigurableClasspathArchive.java    |    7 +-
 .../openejb/config/ConfigurationFactory.java    |   34 +-
 .../apache/openejb/config/ConnectorModule.java  |    4 +-
 .../apache/openejb/config/ContainerUtils.java   |    2 +-
 .../config/ConvertDataSourceDefinitions.java    |    4 +-
 .../openejb/config/DebuggableVmHackery.java     |    4 +-
 .../apache/openejb/config/DeploymentLoader.java |  107 +-
 .../apache/openejb/config/DeploymentModule.java |    2 +-
 .../openejb/config/DeploymentsResolver.java     |    4 +-
 .../config/EnvEntriesPropertiesDeployer.java    |    2 +-
 .../apache/openejb/config/FinderFactory.java    |    6 +-
 .../openejb/config/GeneratedClientModules.java  |    2 +-
 .../openejb/config/InitEjbDeployments.java      |    6 +-
 .../openejb/config/JndiEncInfoBuilder.java      |    6 +-
 .../apache/openejb/config/LinkBuiltInTypes.java |    4 +-
 .../apache/openejb/config/MBeanDeployer.java    |    4 +-
 .../java/org/apache/openejb/config/Module.java  |    4 +-
 .../apache/openejb/config/NewLoaderLogic.java   |   12 +-
 .../config/OpenEJBDeploymentManager.java        |   12 +-
 .../openejb/config/OpenEjb2Conversion.java      |   10 +-
 .../config/PersistenceContextAnnFactory.java    |    8 +-
 .../openejb/config/PersistenceModule.java       |    2 +-
 .../config/PersistenceUnitLinkResolver.java     |    2 +-
 .../openejb/config/QuickServerXmlParser.java    |    2 +-
 .../org/apache/openejb/config/RemoteServer.java |    6 +-
 .../openejb/config/RemoveWebServices.java       |    2 +-
 .../org/apache/openejb/config/ScanUtil.java     |    4 +-
 .../org/apache/openejb/config/ServiceUtils.java |    2 +-
 .../apache/openejb/config/SunConversion.java    |   36 +-
 .../org/apache/openejb/config/TldScanner.java   |   12 +-
 .../openejb/config/ValidationContext.java       |    6 +-
 .../openejb/config/VmDeploymentManager.java     |   10 +-
 .../org/apache/openejb/config/WebModule.java    |   20 +-
 .../openejb/config/WebappAggregatedArchive.java |    2 +-
 .../org/apache/openejb/config/WsDeployer.java   |    6 +-
 .../config/provider/ProviderManager.java        |   16 +-
 .../config/provider/ServiceJarXmlLoader.java    |    6 +-
 .../config/rules/CheckAssemblyBindings.java     |    6 +-
 .../openejb/config/rules/CheckAsynchronous.java |    2 +-
 .../openejb/config/rules/CheckCallbacks.java    |    2 +-
 .../openejb/config/rules/CheckClassLoading.java |    8 +-
 .../openejb/config/rules/CheckDependsOn.java    |    8 +-
 .../config/rules/CheckDescriptorLocation.java   |    4 +-
 .../config/rules/CheckInjectionTargets.java     |    2 +-
 .../openejb/config/rules/CheckMethods.java      |    8 +-
 .../config/rules/CheckRestMethodArePublic.java  |    4 +-
 .../apache/openejb/config/sys/JaxbOpenejb.java  |    2 +-
 .../apache/openejb/config/sys/ListAdapter.java  |    2 +-
 .../org/apache/openejb/config/sys/Openejb.java  |    2 +-
 .../apache/openejb/config/sys/Resources.java    |   10 +-
 .../openejb/config/sys/SaxAppCtxConfig.java     |   15 +-
 .../apache/openejb/config/sys/SaxOpenejb.java   |   21 +-
 .../openejb/config/sys/ServiceProvider.java     |    2 +-
 .../apache/openejb/config/sys/ServicesJar.java  |    2 +-
 .../openejb/config/sys/WikiGenerator.java       |    4 +-
 .../openejb/config/typed/util/ObjectMap.java    |    4 +-
 .../config/typed/util/ProviderGenerator.java    |    4 +-
 .../apache/openejb/core/BaseSessionContext.java |   11 +-
 .../openejb/core/CoreContainerSystem.java       |   12 +-
 ...impleTransactionSynchronizationRegistry.java |    4 +-
 .../org/apache/openejb/core/ThreadContext.java  |    2 +-
 .../org/apache/openejb/core/WebContext.java     |    4 +-
 .../apache/openejb/core/cmp/CmpContainer.java   |   12 +-
 .../openejb/core/cmp/ComplexKeyGenerator.java   |    2 +-
 .../openejb/core/cmp/cmp2/Cmp2Generator.java    |    8 +-
 .../apache/openejb/core/cmp/cmp2/CmrSet.java    |    2 +-
 .../openejb/core/cmp/cmp2/SetValuedCmr.java     |    2 +-
 .../openejb/core/cmp/jpa/JpaCmpEngine.java      |    2 +-
 .../openejb/core/entity/EntityContainer.java    |    6 +-
 .../openejb/core/entity/EntityContext.java      |    4 +-
 .../core/entity/EntityInstanceManager.java      |    2 +-
 .../openejb/core/entity/EntrancyTracker.java    |    4 +-
 .../core/interceptor/InterceptorData.java       |   20 +-
 .../core/interceptor/InterceptorStack.java      |    2 +-
 .../ReflectionInvocationContext.java            |    2 +-
 .../openejb/core/ivm/BaseEjbProxyHandler.java   |   10 +-
 .../openejb/core/ivm/EjbHomeProxyHandler.java   |    6 +-
 .../openejb/core/ivm/EjbObjectProxyHandler.java |    2 +-
 .../openejb/core/ivm/IntraVmArtifact.java       |    2 +-
 .../ivm/naming/AbstractThreadLocalProxy.java    |    2 +-
 .../ivm/naming/ContextualJndiReference.java     |    4 +-
 .../openejb/core/ivm/naming/IvmContext.java     |    6 +-
 .../core/ivm/naming/JaxWsServiceReference.java  |    8 +-
 .../apache/openejb/core/managed/Instance.java   |    4 +-
 .../openejb/core/managed/ManagedContainer.java  |   18 +-
 .../openejb/core/managed/SimpleCache.java       |    8 +-
 .../openejb/core/managed/SimplePassivater.java  |    4 +-
 .../openejb/core/mdb/EndpointFactory.java       |    2 +-
 .../apache/openejb/core/mdb/MdbContainer.java   |    4 +-
 .../openejb/core/mdb/MdbInstanceManager.java    |   12 +-
 .../openejb/core/mdb/MdbPoolContainer.java      |    4 +-
 .../core/security/AbstractSecurityService.java  |    6 +-
 .../core/security/jaas/SQLLoginModule.java      |   14 +-
 .../core/security/jaas/ScriptLoginModule.java   |    4 +-
 .../jaas/ServiceProviderLoginModule.java        |    4 +-
 .../core/security/jacc/BasicJaccProvider.java   |    2 +-
 .../security/jacc/BasicPolicyConfiguration.java |    2 +-
 .../core/singleton/SingletonContainer.java      |   10 +-
 .../singleton/SingletonInstanceManager.java     |    6 +-
 .../apache/openejb/core/stateful/Instance.java  |    4 +-
 .../openejb/core/stateful/SimpleCache.java      |    8 +-
 .../openejb/core/stateful/SimplePassivater.java |    4 +-
 .../core/stateful/StatefulContainer.java        |   14 +-
 .../core/stateless/StatelessContainer.java      |   10 +-
 .../stateless/StatelessInstanceManager.java     |    4 +-
 .../openejb/core/timer/EJBCronTrigger.java      |   18 +-
 .../openejb/core/timer/EjbTimerServiceImpl.java |    4 +-
 .../openejb/core/timer/MemoryTimerStore.java    |   19 +-
 .../core/transaction/JtaTransactionPolicy.java  |    8 +-
 .../core/webservices/HandlerChainData.java      |    4 +-
 .../openejb/core/webservices/HandlerData.java   |    8 +-
 .../core/webservices/HandlerResolverImpl.java   |   16 +-
 .../webservices/PortAddressRegistryImpl.java    |   18 +-
 .../openejb/core/webservices/PortData.java      |    4 +-
 .../openejb/core/webservices/PortRefData.java   |    2 +-
 .../core/webservices/ProviderWrapper.java       |    2 +-
 .../core/webservices/ServiceRefData.java        |    4 +-
 .../apache/openejb/dyni/DynamicSubclass.java    |    2 +-
 .../org/apache/openejb/log/ColorFormatter.java  |    2 +-
 .../apache/openejb/log/logger/Log4jLogger.java  |    2 +-
 .../apache/openejb/log/logger/Slf4jLogger.java  |    5 +-
 .../stat/descriptive/DescriptiveStatistics.java |    2 +-
 .../math/stat/descriptive/moment/Kurtosis.java  |    2 +-
 .../math/stat/descriptive/moment/Skewness.java  |    2 +-
 .../openejb/monitoring/DynamicMBeanWrapper.java |   12 +-
 .../apache/openejb/monitoring/ManagedMBean.java |   14 +-
 .../openejb/monitoring/ObjectNameBuilder.java   |    2 +-
 .../openejb/monitoring/StatsInterceptor.java    |    2 +-
 .../remote/RemoteResourceMonitor.java           |    4 +-
 .../openejb/persistence/JtaEntityManager.java   |    2 +-
 .../persistence/JtaEntityManagerRegistry.java   |    2 +-
 .../apache/openejb/persistence/JtaQuery.java    |    2 +-
 .../persistence/PersistenceBootstrap.java       |    8 +-
 .../persistence/PersistenceUnitInfoImpl.java    |    6 +-
 .../openejb/resource/AutoConnectionTracker.java |   16 +-
 .../resource/activemq/ActiveMQ5Factory.java     |    4 +-
 .../resource/jdbc/DataSourceFactory.java        |    2 +-
 .../resource/jdbc/driver/AlternativeDriver.java |    2 +-
 .../logging/LoggingPreparedSqlStatement.java    |    2 +-
 .../jdbc/pool/PoolDataSourceCreator.java        |    2 +-
 .../jdbc/pool/XADataSourceResource.java         |    2 +-
 .../resource/jdbc/router/FailOverRouter.java    |    2 +-
 .../resource/quartz/QuartzResourceAdapter.java  |    8 +-
 .../rest/AbstractRestThreadLocalProxy.java      |    2 +-
 ...MultivaluedMapWithCaseInsensitiveKeySet.java |    2 +-
 .../openejb/rest/ThreadLocalHttpHeaders.java    |    2 +-
 .../openejb/ri/sp/PseudoTransactionService.java |   14 +-
 .../java/org/apache/openejb/table/Lines.java    |    2 +-
 .../openejb/testing/ApplicationComposers.java   |   30 +-
 .../openejb/testng/PropertiesBuilder.java       |    2 +-
 .../impl/ManagedExecutorServiceImpl.java        |    2 +-
 .../ManagedScheduledExecutorServiceImpl.java    |   12 +-
 .../apache/openejb/util/AnnotationFinder.java   |   13 +-
 .../apache/openejb/util/AsynchronousRunner.java |    2 +-
 .../java/org/apache/openejb/util/Classes.java   |    4 +-
 .../java/org/apache/openejb/util/Debug.java     |   14 +-
 .../apache/openejb/util/DirectoryMonitor.java   |    4 +-
 .../java/org/apache/openejb/util/Duration.java  |    2 +-
 .../apache/openejb/util/ExecutorBuilder.java    |    8 +-
 .../java/org/apache/openejb/util/Index.java     |   20 +-
 .../openejb/util/IntrospectionSupport.java      |    4 +-
 .../main/java/org/apache/openejb/util/Join.java |    2 +-
 .../org/apache/openejb/util/LinkResolver.java   |    6 +-
 .../apache/openejb/util/ListConfigurator.java   |    2 +-
 .../openejb/util/Log4jLogStreamFactory.java     |    2 +-
 .../java/org/apache/openejb/util/Logger.java    |    2 +-
 .../java/org/apache/openejb/util/Memoizer.java  |    4 +-
 .../java/org/apache/openejb/util/Messages.java  |    2 +-
 .../apache/openejb/util/ObjectRecipeHelper.java |    2 +-
 .../apache/openejb/util/OpenEJBScripter.java    |    2 +-
 .../apache/openejb/util/PojoSerialization.java  |    2 +-
 .../main/java/org/apache/openejb/util/Pool.java |    2 +-
 .../apache/openejb/util/PropertiesHelper.java   |    2 +-
 .../org/apache/openejb/util/References.java     |   20 +-
 .../apache/openejb/util/SimpleJSonParser.java   |    4 +-
 .../apache/openejb/util/SuperProperties.java    |   16 +-
 .../org/apache/openejb/util/URISupport.java     |    6 +-
 .../java/org/apache/openejb/util/UrlCache.java  |   10 +-
 .../org/apache/openejb/util/UrlComparator.java  |    2 +-
 .../openejb/util/helper/CommandHelper.java      |    6 +-
 .../openejb/util/proxy/Jdk13ProxyFactory.java   |    2 +-
 .../util/proxy/LocalBeanProxyFactory.java       |    4 +-
 .../org/apache/openejb/util/proxy/ProxyEJB.java |    2 +-
 .../apache/openejb/util/proxy/QueryProxy.java   |    6 +-
 .../openejb/web/LightweightWebAppBuilder.java   |   22 +-
 .../apache/openejb/config/Messages.properties   |    3 +
 .../src/main/resources/test-orm.xml             |   32 +
 .../openejb/DependenceValidationTest.java       |    2 +-
 .../org/apache/openejb/DependencyVisitor.java   |    8 +-
 .../apache/openejb/OpenEjbContainerTest.java    |    4 +-
 .../openejb/assembler/DeployerEjbTest.java      |    2 +-
 .../assembler/classic/AccessTimeoutTest.java    |    4 +-
 .../classic/AppNamingReadOnlyTest.java          |    4 +-
 .../classic/ConcurrentLockTypeTest.java         |    4 +-
 .../assembler/classic/ConcurrentMethodTest.java |    4 +-
 .../classic/DataSourceDefinitionTest.java       |    2 +-
 .../DescriptorDataSourceDefinitionTest.java     |    2 +-
 .../InterceptorBindingInfoComparatorTest.java   |   10 +-
 .../assembler/classic/JdbcConfigTest.java       |    4 +-
 .../assembler/classic/LinkResolverTest.java     |    2 +-
 .../MethodTransactionInfoComparatorTest.java    |    6 +-
 .../OpenEjbConfigurationValidationTest.java     |    2 +-
 .../classic/ResourceInfoComparatorTest.java     |    6 +-
 .../apache/openejb/cdi/BasicObserverTest.java   |    2 +-
 .../apache/openejb/cdi/DependentScopedTest.java |    2 +-
 .../openejb/config/AnnotationDeployerTest.java  |    2 +-
 .../config/ApplicationPropertiesTest.java       |   14 +-
 .../config/AutoConfigMdbContainerTest.java      |    2 +-
 .../config/AutoConfigResourceRefsTest.java      |    4 +-
 .../apache/openejb/config/AutoDeployerTest.java |    2 +-
 .../openejb/config/BeanPropertiesTest.java      |   12 +-
 .../openejb/config/BusinessInterfacesTest.java  |    8 +-
 .../config/CheckDescriptorLocationTest.java     |    6 +-
 ...escriptorLocationTestFileDeletionHelper.java |    2 +-
 .../openejb/config/CleanEnvEntriesTest.java     |    2 +-
 .../openejb/config/DeploymentLoaderTest.java    |    4 +-
 .../openejb/config/DeploymentsElementTest.java  |   16 +-
 .../openejb/config/EarModuleNamesTest.java      |   28 +-
 .../apache/openejb/config/EarUnpackTest.java    |    4 +-
 .../apache/openejb/config/EjbModuleIdTest.java  |   14 +-
 .../openejb/config/JMXDataSourceTest.java       |    2 +-
 .../config/JndiEncInfoBuilderInsertTest.java    |   10 +-
 .../openejb/config/MBeanDeployerTest.java       |    2 +-
 .../openejb/config/ModulePropertiesTest.java    |   10 +-
 .../PersistenceContextAnnFactoryTest.java       |    2 +-
 .../openejb/config/ProviderManagerTest.java     |    4 +-
 .../openejb/config/ServiceClasspathTest.java    |    6 +-
 .../openejb/config/SunCmpConversionTest.java    |    2 +-
 .../apache/openejb/config/XmlOverridesTest.java |    2 +-
 ...CheckInvalidAsynchronousAnnotationsTest.java |    4 +-
 .../openejb/config/rules/InvokeMethod.java      |   10 +-
 .../config/rules/KeysAnnotationVisitor.java     |    4 +-
 .../config/rules/ValidationAssertions.java      |    2 +-
 .../config/rules/ValidationKeysAuditorTest.java |   18 +-
 .../openejb/core/InheritedAppExceptionTest.java |    2 +-
 .../openejb/core/LegacyInterfaceTest.java       |   73 +-
 .../openejb/core/asynch/AsynchInRoleTest.java   |   14 +-
 .../apache/openejb/core/asynch/AsynchTest.java  |   14 +-
 .../apache/openejb/core/cmp/jpa/AuthorBean.java |    2 +-
 .../apache/openejb/core/cmp/jpa/BookBean.java   |    2 +-
 .../openejb/core/ivm/naming/IvmContextTest.java |    4 +-
 .../core/mdb/CustomMdbContainerTest.java        |    2 +-
 .../org/apache/openejb/core/mdb/JmsTest.java    |    4 +-
 .../org/apache/openejb/core/mdb/MdbInvoker.java |    4 +-
 .../org/apache/openejb/core/mdb/MdbProxy.java   |    2 +-
 .../org/apache/openejb/core/mdb/MdbTest.java    |    4 +-
 .../openejb/core/mdb/NoMessageDeliveryTest.java |    2 +-
 .../connector/impl/SampleManagedConnection.java |    2 +-
 .../connector/impl/SampleResourceAdapter.java   |    2 +-
 .../core/security/SecurityServiceImplTest.java  |    3 +-
 .../core/singleton/AsyncPostContructTest.java   |    6 +-
 .../stateful/EntityManagerPropogationTest.java  |    4 +-
 .../stateful/StatefulConcurrentLookupTest.java  |    2 +-
 .../core/stateful/StatefulContainerTest.java    |    8 +-
 .../StatefulSecurityPermissionsTest.java        |    2 +-
 .../core/stateless/StatelessContainerTest.java  |    3 +-
 .../stateless/StatelessInvocationStatsTest.java |    3 +-
 .../stateless/StatelessMetaAnnotationTest.java  |    3 +-
 .../core/stateless/StatelessPoolStatsTest.java  |   13 +-
 .../core/webservices/JPACMDIntegrationTest.java |  325 +
 .../interceptors/FullyInterceptedBean.java      |    4 +-
 .../interceptors/FullyInterceptedTest.java      |    4 +-
 .../MethodLevelInterceptorOnlySLSBean.java      |    2 +-
 .../MethodLevelInterceptorOnlyTest.java         |    2 +-
 .../SecondStatelessInterceptedBean.java         |    2 +-
 .../SecondStatelessInterceptedTest.java         |    2 +-
 .../openejb/interceptors/ThirdSLSBean.java      |    4 +-
 .../openejb/interceptors/ThirdSLSBeanTest.java  |    4 +-
 .../org/apache/openejb/interceptors/Utils.java  |    2 +-
 .../openejb/ivm/naming/IvmContextTest.java      |    4 +-
 .../java/org/apache/openejb/meta/MetaTest.java  |    4 +-
 .../persistence/JtaEntityManagerTest.java       |    2 +-
 .../resource/AutoConnectionTrackerTest.java     |    8 +-
 .../resource/jdbc/DynamicDataSourceTest.java    |    6 +-
 .../MultiThreadedManagedDataSourceTest.java     |    2 +-
 .../cmr/onetomany/ExampleABean_ABean.java       |    4 +-
 .../entity/cmr/onetoone/ExampleABean_ABean.java |    2 +-
 .../entity/cmr/onetoone/ExampleBBean_BBean.java |    2 +-
 .../TransactionRollbackCauseTest.java           |    2 +-
 .../java/org/apache/openejb/util/Archives.java  |    2 +-
 .../apache/openejb/util/DynamicEJBImplTest.java |    4 +-
 .../org/apache/openejb/util/OptionsTest.java    |    2 +-
 .../java/org/apache/openejb/util/PoolTest.java  |   18 +-
 .../org/apache/openejb/util/PropertiesTest.java |    2 +-
 .../org/apache/openejb/util/ReferencesTest.java |   28 +-
 .../openejb/util/SuperPropertiesTest.java       |    2 +-
 .../apache/openejb/util/UrlComparatorTest.java  |    2 +-
 .../org/apache/openejb/util/WebArchives.java    |    2 +-
 .../util/proxy/LocalBeanProxyFactoryTest.java   |    6 +-
 .../openejb/util/proxy/SampleLocalBean.java     |    2 +-
 .../openejb/jee/FacesConfigFlowDefinition.java  |    2 +-
 .../org/apache/openejb/junit/OpenEjbRunner.java |    4 +-
 .../junit/context/OpenEjbTestContext.java       |    8 +-
 .../org/apache/openejb/junit/context/Util.java  |   11 +-
 .../openejb/loader/BasicURLClassPath.java       |    4 +-
 docs/Configuring-in-tomee.adoc                  |   49 +
 docs/Configuring-in-tomee.md                    |   45 -
 docs/activemqresourceadapter-config.adoc        |   90 +
 docs/activemqresourceadapter-config.md          |   69 -
 docs/admin/cluster/index.adoc                   |   23 +-
 docs/admin/configuration/application.adoc       |   16 +-
 docs/admin/configuration/containers.adoc        |  100 +-
 docs/admin/configuration/index.adoc             |    4 +-
 docs/admin/configuration/resources.adoc         |  128 +-
 docs/admin/configuration/server.adoc            |    4 +-
 docs/admin/index.adoc                           |    2 +-
 docs/advanced/client/jndi.adoc                  |   24 +-
 docs/advanced/index.adoc                        |    2 +-
 docs/advanced/jms/jms-configuration.adoc        |    4 +-
 docs/advanced/setup/index.adoc                  |    9 +-
 docs/advanced/shading/index.adoc                |    4 +-
 docs/advanced/tomee-embedded/index.adoc         |    4 +-
 docs/alternate-descriptors.adoc                 |  124 +
 docs/alternate-descriptors.md                   |  117 -
 docs/annotations,-xml-and-defaults.adoc         |   22 +
 docs/annotations,-xml-and-defaults.md           |  569 --
 docs/app-clients-and-jndi.adoc                  |   74 +
 docs/app-clients-and-jndi.md                    |   73 -
 docs/application-composer/advanced.adoc         |  111 +
 docs/application-composer/advanced.md           |   90 -
 docs/application-composer/getting-started.adoc  |  234 +
 docs/application-composer/getting-started.md    |  188 -
 docs/application-composer/history.adoc          |   48 +
 docs/application-composer/history.md            |   38 -
 docs/application-composer/index.adoc            |   20 +
 docs/application-composer/index.md              |   18 -
 docs/application-deployment-solutions.adoc      |   92 +
 docs/application-deployment-solutions.md        |   78 -
 ...application-discovery-via-the-classpath.adoc |  111 +
 docs/application-discovery-via-the-classpath.md |   94 -
 docs/application-resources.adoc                 |  375 +
 docs/application-resources.md                   |  250 -
 docs/arquillian-available-adapters.adoc         |  319 +
 docs/arquillian-available-adapters.md           |  264 -
 docs/arquillian-getting-started.adoc            |   41 +
 docs/arquillian-getting-started.md              |   24 -
 docs/basics---getting-things.adoc               |  108 +
 docs/basics---getting-things.md                 |  107 -
 docs/basics---security.adoc                     |   55 +
 docs/basics---security.md                       |   55 -
 docs/basics---transactions.adoc                 |   67 +
 docs/basics---transactions.md                   |   60 -
 docs/bmpentitycontainer-config.adoc             |   55 +
 docs/bmpentitycontainer-config.md               |   37 -
 docs/bouncy-castle.adoc                         |   40 +
 docs/bouncy-castle.md                           |   34 -
 docs/built-in-type-converters.adoc              |  101 +
 docs/built-in-type-converters.md                |   94 -
 docs/callbacks.adoc                             |  169 +
 docs/callbacks.md                               |  167 -
 docs/changing-jms-implementations.adoc          |  161 +
 docs/changing-jms-implementations.md            |  136 -
 docs/client-server-transports.adoc              |   39 +
 docs/client-server-transports.md                |   22 -
 docs/clients.adoc                               |  101 +
 docs/clients.md                                 |  104 -
 docs/cmpentitycontainer-config.adoc             |   53 +
 docs/cmpentitycontainer-config.md               |   36 -
 docs/collapsed-ear.adoc                         |   49 +
 docs/collapsed-ear.md                           |   46 -
 docs/common-datasource-configurations.adoc      |  123 +
 docs/common-datasource-configurations.md        |  115 -
 docs/common-errors.adoc                         |   31 +
 docs/common-errors.md                           |   30 -
 docs/common-persistenceprovider-properties.adoc |   50 +
 docs/common-persistenceprovider-properties.md   |   47 -
 docs/comparison.adoc                            |  231 +
 docs/comparison.md                              |  222 -
 docs/concepts.adoc                              |   83 +
 docs/concepts.md                                |   79 -
 docs/configuration.adoc                         |  151 +
 docs/configuration.md                           |  144 -
 docs/configuring-containers-in-tests.adoc       |   30 +
 docs/configuring-containers-in-tests.md         |   27 -
 docs/configuring-datasources-in-tests.adoc      |   68 +
 docs/configuring-datasources-in-tests.md        |   60 -
 docs/configuring-datasources.adoc               |  204 +
 docs/configuring-datasources.md                 |  170 -
 docs/configuring-durations.adoc                 |   70 +
 docs/configuring-durations.md                   |   67 -
 docs/configuring-javamail.adoc                  |   44 +
 docs/configuring-javamail.md                    |   41 -
 docs/configuring-logging-in-tests.adoc          |  121 +
 docs/configuring-logging-in-tests.md            |  118 -
 docs/configuring-persistenceunits-in-tests.adoc |  160 +
 docs/configuring-persistenceunits-in-tests.md   |  144 -
 docs/constructor-injection.adoc                 |  103 +
 docs/constructor-injection.md                   |   98 -
 docs/containers-and-resources.adoc              |  474 ++
 docs/containers-and-resources.md                |  483 --
 docs/contrib/debug/debug-intellij.adoc          |  182 +
 docs/contrib/debug/debug-intellij.md            |  133 -
 docs/custom-injection.adoc                      |  209 +
 docs/custom-injection.md                        |  193 -
 docs/datasource-config.adoc                     |  535 ++
 docs/datasource-config.md                       |  541 --
 docs/datasource-configuration-by-creator.adoc   |  160 +
 docs/datasource-configuration-by-creator.md     |  151 -
 docs/datasource-password-encryption.adoc        |  168 +
 docs/datasource-password-encryption.md          |  128 -
 docs/deamon/lin-service.adoc                    |   24 +
 docs/deamon/lin-service.md                      |   17 -
 docs/deamon/win-service.adoc                    |   24 +
 docs/deamon/win-service.md                      |   17 -
 docs/declaring-references.adoc                  |    5 +
 docs/declaring-references.md                    |    6 -
 docs/deploy-tool.adoc                           |  167 +
 docs/deploy-tool.md                             |  165 -
 docs/deploying-in-tomee.adoc                    |   73 +
 docs/deploying-in-tomee.md                      |   73 -
 docs/deployment-id.adoc                         |  236 +
 docs/deployment-id.md                           |  231 -
 docs/deployments.adoc                           |  153 +
 docs/deployments.md                             |  135 -
 docs/details-on-openejb-jar.adoc                |  156 +
 docs/details-on-openejb-jar.md                  |  156 -
 docs/developer/classloading/index.adoc          |    1 -
 docs/developer/ide/index.adoc                   |    8 +-
 docs/developer/index.adoc                       |    2 +-
 docs/developer/json/index.adoc                  |    3 +-
 .../testing/applicationcomposer/index.adoc      |   50 +-
 docs/developer/testing/arquillian/index.adoc    |   24 +-
 docs/developer/testing/other/index.adoc         |   10 +-
 docs/developer/tools/gradle-plugins.adoc        |    2 +-
 .../tools/maven/applicationcomposer.adoc        |    8 +-
 docs/developer/tools/maven/embedded.adoc        |    2 +-
 docs/developer/tools/maven/tomee.adoc           |   18 +-
 docs/docs.adoc                                  |    8 +-
 docs/documentation.adoc                         |  103 +
 docs/documentation.md                           |  106 -
 docs/documentation.old.adoc                     |   98 +
 docs/documentation.old.md                       |  102 -
 docs/dynamic-datasource.adoc                    |  224 +
 docs/dynamic-datasource.md                      |  220 -
 docs/eclipse-plugin.adoc                        |   41 +
 docs/eclipse-plugin.md                          |   42 -
 docs/ejb-failover.adoc                          |   93 +
 docs/ejb-failover.md                            |   89 -
 docs/ejb-local-ref.adoc                         |   56 +
 docs/ejb-local-ref.md                           |   52 -
 docs/ejb-over-ssl.adoc                          |  137 +
 docs/ejb-over-ssl.md                            |  100 -
 docs/ejb-ref.adoc                               |   55 +
 docs/ejb-ref.md                                 |   50 -
 docs/ejb-refs.adoc                              |  199 +
 docs/ejb-refs.md                                |  178 -
 docs/ejb-request-logging.adoc                   |  158 +
 docs/ejb-request-logging.md                     |   98 -
 docs/ejbd-transport.adoc                        |  212 +
 docs/ejbd-transport.md                          |  136 -
 docs/embedded-and-remotable.adoc                |  177 +
 docs/embedded-and-remotable.md                  |  181 -
 docs/embedded-configuration.adoc                |  138 +
 docs/embedded-configuration.md                  |  135 -
 docs/embedding.adoc                             |   34 +
 docs/embedding.md                               |   30 -
 docs/failover-logging.adoc                      |   58 +
 docs/failover-logging.md                        |   42 -
 docs/faq.adoc                                   |  108 +
 docs/faq.md                                     |   99 -
 docs/features.adoc                              |    5 +
 docs/features.md                                |    6 -
 docs/from-glassfish-to-tomee.adoc               |   11 +
 docs/from-glassfish-to-tomee.md                 |    7 -
 ...esting-with-openejb,-jetty-and-selenium.adoc |  238 +
 ...-testing-with-openejb,-jetty-and-selenium.md |  240 -
 docs/generating-ejb-3-annotations.adoc          |   65 +
 docs/generating-ejb-3-annotations.md            |   61 -
 docs/getting-started.adoc                       |  178 +
 docs/getting-started.md                         |  172 -
 docs/hello-world.adoc                           |  263 +
 docs/hello-world.md                             |  250 -
 docs/hibernate.adoc                             |  103 +
 docs/hibernate.md                               |   98 -
 docs/initialcontext-config.adoc                 |   44 +
 docs/initialcontext-config.md                   |   26 -
 docs/installation-drop-in-war.adoc              |   55 +
 docs/installation-drop-in-war.md                |   45 -
 docs/installation.adoc                          |   35 +
 docs/installation.md                            |   34 -
 docs/installing-tomee.adoc                      |   87 +
 docs/installing-tomee.md                        |   71 -
 docs/java7.adoc                                 |   40 +
 docs/java7.md                                   |   40 -
 docs/javaagent-with-maven-surefire.adoc         |   38 +
 docs/javaagent-with-maven-surefire.md           |   57 -
 docs/javaagent.adoc                             |   66 +
 docs/javaagent.md                               |   61 -
 docs/javaee7-status.adoc                        |  218 +
 docs/javaee7-status.md                          |  185 -
 docs/javamailsession-config.adoc                |   44 +
 docs/javamailsession-config.md                  |   26 -
 docs/jms-resources-and-mdb-container.adoc       |  362 +
 docs/jms-resources-and-mdb-container.md         |  283 -
 docs/jmsconnectionfactory-config.adoc           |  104 +
 docs/jmsconnectionfactory-config.md             |   87 -
 docs/jndi-names.adoc                            |  401 ++
 docs/jndi-names.md                              |  372 -
 docs/jpa-concepts.adoc                          |  227 +
 docs/jpa-concepts.md                            |  220 -
 docs/jpa-usage.adoc                             |   48 +
 docs/jpa-usage.md                               |   52 -
 docs/local-client-injection.adoc                |   87 +
 docs/local-client-injection.md                  |   87 -
 docs/local-server.adoc                          |   56 +
 docs/local-server.md                            |   61 -
 docs/lookup-of-other-ejbs-example.adoc          |  148 +
 docs/lookup-of-other-ejbs-example.md            |  149 -
 docs/managedcontainer-config.adoc               |   44 +
 docs/managedcontainer-config.md                 |   26 -
 docs/manual-installation.adoc                   |  148 +
 docs/manual-installation.md                     |  224 -
 docs/maven.adoc                                 |   63 +
 docs/maven.md                                   |   42 -
 docs/maven/build-mojo.adoc                      | 1169 +++
 docs/maven/build-mojo.md                        | 1426 ----
 docs/maven/configtest-mojo.adoc                 | 1086 +++
 docs/maven/configtest-mojo.md                   | 1328 ----
 docs/maven/debug-mojo.adoc                      | 1139 +++
 docs/maven/debug-mojo.md                        | 1395 ----
 docs/maven/deploy-mojo.adoc                     |  196 +
 docs/maven/deploy-mojo.md                       |  255 -
 docs/maven/exec-mojo.adoc                       | 1277 ++++
 docs/maven/exec-mojo.md                         | 1551 ----
 docs/maven/help-mojo.adoc                       |  115 +
 docs/maven/help-mojo.md                         |  149 -
 docs/maven/index.adoc                           |  178 +
 docs/maven/index.md                             |  148 -
 docs/maven/list-mojo.adoc                       |  132 +
 docs/maven/list-mojo.md                         |  169 -
 docs/maven/run-mojo.adoc                        | 1139 +++
 docs/maven/run-mojo.md                          | 1395 ----
 docs/maven/start-mojo.adoc                      | 1139 +++
 docs/maven/start-mojo.md                        | 1395 ----
 docs/maven/stop-mojo.adoc                       | 1086 +++
 docs/maven/stop-mojo.md                         | 1328 ----
 docs/maven/undeploy-mojo.adoc                   |  159 +
 docs/maven/undeploy-mojo.md                     |  209 -
 docs/messagedrivencontainer-config.adoc         |   87 +
 docs/messagedrivencontainer-config.md           |   67 -
 docs/multicast-discovery.adoc                   |   93 +
 docs/multicast-discovery.md                     |   83 -
 docs/multiple-business-interface-hazzards.adoc  |  209 +
 docs/multiple-business-interface-hazzards.md    |  202 -
 docs/multipoint-considerations.adoc             |   31 +
 docs/multipoint-considerations.md               |   30 -
 docs/multipoint-discovery.adoc                  |   87 +
 docs/multipoint-discovery.md                    |   75 -
 docs/multipoint-recommendations.adoc            |  153 +
 docs/multipoint-recommendations.md              |  141 -
 docs/multipulse-discovery.adoc                  |  112 +
 docs/multipulse-discovery.md                    |   94 -
 docs/new-in-openejb-3.0.adoc                    |  156 +
 docs/new-in-openejb-3.0.md                      |  179 -
 docs/openejb-3.adoc                             |   69 +
 docs/openejb-3.md                               |   72 -
 docs/openejb-binaries.adoc                      |   34 +
 docs/openejb-binaries.md                        |   27 -
 docs/openejb-eclipse-plugin.adoc                |   22 +
 docs/openejb-eclipse-plugin.md                  |   22 -
 docs/openejb-jsr-107-integration.adoc           |   24 +
 docs/openejb-jsr-107-integration.md             |   25 -
 docs/openejb.xml.adoc                           |   99 +
 docs/openejb.xml.md                             |   96 -
 docs/openjpa.adoc                               |  132 +
 docs/openjpa.md                                 |  113 -
 docs/orb-config.adoc                            |   42 +
 docs/orb-config.md                              |   26 -
 docs/persistence-context.adoc                   |   61 +
 docs/persistence-context.md                     |   57 -
 docs/persistence-unit-ref.adoc                  |   95 +
 docs/persistence-unit-ref.md                    |   91 -
 docs/properties-listing.adoc                    |  729 ++
 docs/properties-listing.md                      |   94 -
 docs/properties-tool.adoc                       |  219 +
 docs/properties-tool.md                         |  216 -
 docs/property-overriding.adoc                   |   64 +
 docs/property-overriding.md                     |   65 -
 docs/provisioning.adoc                          |  102 +
 docs/provisioning.md                            |   78 -
 docs/proxyfactory-config.adoc                   |   44 +
 docs/proxyfactory-config.md                     |   26 -
 docs/queue-config.adoc                          |   50 +
 docs/queue-config.md                            |   36 -
 docs/quickstart.adoc                            |   69 +
 docs/quickstart.md                              |   71 -
 docs/remote-server.adoc                         |   72 +
 docs/remote-server.md                           |   64 -
 docs/resource-injection.adoc                    |  209 +
 docs/resource-injection.md                      |  184 -
 docs/resource-ref-for-datasource.adoc           |   55 +
 docs/resource-ref-for-datasource.md             |   46 -
 docs/running-a-standalone-openejb-server.adoc   |   77 +
 docs/running-a-standalone-openejb-server.md     |   95 -
 docs/securing-a-web-service.adoc                |  240 +
 docs/securing-a-web-service.md                  |  242 -
 docs/security-annotations.adoc                  |  301 +
 docs/security-annotations.md                    |  296 -
 docs/security.adoc                              |  201 +
 docs/security.md                                |  148 -
 docs/securityservice-config.adoc                |   52 +
 docs/securityservice-config.md                  |   36 -
 docs/service-locator.adoc                       |  168 +
 docs/service-locator.md                         |  171 -
 docs/services.adoc                              |   28 +
 docs/services.md                                |   20 -
 docs/singleton-beans.adoc                       |  232 +
 docs/singleton-beans.md                         |  226 -
 docs/singleton-ejb.adoc                         |    7 +
 docs/singleton-ejb.md                           |    6 -
 docs/singletoncontainer-config.adoc             |   71 +
 docs/singletoncontainer-config.md               |   56 -
 docs/spring-and-openejb-3.0.adoc                |  233 +
 docs/spring-and-openejb-3.0.md                  |  190 -
 docs/spring-ejb-and-jpa.adoc                    |  197 +
 docs/spring-ejb-and-jpa.md                      |  173 -
 docs/spring.adoc                                |  139 +
 docs/spring.md                                  |  124 -
 docs/ssh.adoc                                   |   63 +
 docs/ssh.md                                     |   51 -
 docs/standalone-server.adoc                     |   24 +
 docs/standalone-server.md                       |   27 -
 docs/startup.adoc                               |  272 +
 docs/startup.md                                 |  296 -
 docs/statefulcontainer-config.adoc              |  167 +
 docs/statefulcontainer-config.md                |  160 -
 docs/statelesscontainer-config.adoc             |  445 ++
 docs/statelesscontainer-config.md               |  461 --
 docs/system-properties-files.adoc               |   25 +
 docs/system-properties-files.md                 |   22 -
 docs/system-properties.adoc                     |   71 +
 docs/system-properties.md                       |   68 -
 docs/telnet-console.adoc                        |  165 +
 docs/telnet-console.md                          |  166 -
 docs/tip-concurrency.adoc                       |   34 +
 docs/tip-concurrency.md                         |   26 -
 docs/tip-jersey-client.adoc                     |   35 +
 docs/tip-jersey-client.md                       |   22 -
 docs/tip-weblogic.adoc                          |   22 +
 docs/tip-weblogic.md                            |   17 -
 docs/tomcat-object-factory.adoc                 |   17 +
 docs/tomcat-object-factory.md                   |   15 -
 docs/tomee-and-eclipse.adoc                     |  140 +
 docs/tomee-and-eclipse.md                       |  145 -
 docs/tomee-and-hibernate.adoc                   |  173 +
 docs/tomee-and-hibernate.md                     |  163 -
 docs/tomee-and-intellij.adoc                    |   82 +
 docs/tomee-and-intellij.md                      |   81 -
 docs/tomee-and-netbeans.adoc                    |  107 +
 docs/tomee-and-netbeans.md                      |   97 -
 docs/tomee-and-security.adoc                    |   56 +
 docs/tomee-and-security.md                      |   45 -
 docs/tomee-and-webspheremq.adoc                 |   26 +
 docs/tomee-and-webspheremq.md                   |  136 -
 docs/tomee-directory-structure.adoc             |   25 +
 docs/tomee-directory-structure.md               |   61 -
 docs/tomee-embedded-maven-plugin.adoc           |  787 ++
 docs/tomee-embedded-maven-plugin.md             |  959 ---
 docs/tomee-jaas.adoc                            |   93 +
 docs/tomee-jaas.md                              |   73 -
 docs/tomee-logging-in-eclipse.adoc              |   19 +
 docs/tomee-logging-in-eclipse.md                |   13 -
 docs/tomee-logging.adoc                         |   32 +
 docs/tomee-logging.md                           |   33 -
 docs/tomee-maven-plugin.adoc                    |  178 +
 docs/tomee-maven-plugin.md                      |  148 -
 docs/tomee-mp-getting-started.adoc              |  103 +
 docs/tomee-mp-getting-started.md                |   65 -
 docs/tomee-version-policies.adoc                |   55 +
 docs/tomee-version-policies.md                  |   28 -
 docs/tomee-webaccess.adoc                       |   18 +
 docs/tomee-webaccess.md                         |   21 -
 docs/tomee-webapp.adoc                          |   75 +
 docs/tomee-webapp.md                            |   62 -
 docs/topic-config.adoc                          |   50 +
 docs/topic-config.md                            |   36 -
 docs/transaction-annotations.adoc               |  230 +
 docs/transaction-annotations.md                 |  219 -
 docs/transactionmanager-config.adoc             |  183 +
 docs/transactionmanager-config.md               |  166 -
 docs/understanding-callbacks.adoc               |   98 +
 docs/understanding-callbacks.md                 |   92 -
 docs/understanding-the-directory-layout.adoc    |   74 +
 docs/understanding-the-directory-layout.md      |   72 -
 docs/unix-daemon.adoc                           |  158 +
 docs/unix-daemon.md                             |  108 -
 docs/validation-tool.adoc                       |  143 +
 docs/validation-tool.md                         |  141 -
 docs/version-checker.adoc                       |   13 +
 docs/version-checker.md                         |   12 -
 examples/README.adoc                            |   21 +
 examples/arquillian-jpa/pom.xml                 |    4 +-
 examples/cdi-basic/README.md                    |    5 +-
 examples/concurrency-utils/pom.xml              |   68 +
 .../executor/ManagedScheduledService.java       |  129 +
 .../org/superbiz/executor/ManagedService.java   |   95 +
 .../superbiz/executor/ThreadFactoryService.java |   71 +
 .../executor/ManagedScheduledServiceTest.java   |  130 +
 .../superbiz/executor/ManagedServiceTest.java   |  105 +
 .../executor/ThreadFactoryServiceTest.java      |   53 +
 .../connector-starter-api/pom.xml               |   50 -
 .../connector/starter/api/InboundListener.java  |   24 -
 .../src/main/resources/META-INF/LICENSE         |  202 -
 .../src/main/resources/META-INF/NOTICE          |    7 -
 .../connector-starter-impl/pom.xml              |   60 -
 .../starter/adapter/SampleActivationSpec.java   |   54 -
 .../starter/adapter/SampleResourceAdapter.java  |   92 -
 .../src/main/resources/META-INF/LICENSE         |  202 -
 .../src/main/resources/META-INF/NOTICE          |    7 -
 .../src/main/rar/META-INF/LICENSE               |  294 -
 .../src/main/rar/META-INF/NOTICE                |    5 -
 .../src/main/rar/META-INF/ra.xml                |   58 -
 .../connector-starter-sample-war/pom.xml        |  150 -
 .../src/main/java/org/superbiz/Receiver.java    |   35 -
 .../src/main/java/org/superbiz/Sender.java      |   52 -
 .../src/main/resources/META-INF/LICENSE         |  202 -
 .../src/main/resources/META-INF/NOTICE          |    7 -
 .../src/main/resources/META-INF/ejb-jar.xml     |   23 -
 .../org/tomitribe/connector/starter/Runner.java |  104 -
 .../src/test/resources/arquillian.xml           |   30 -
 examples/connector-ear-sample/pom.xml           |  205 -
 examples/java-modules/README.md                 |    7 +
 examples/java-modules/pom.xml                   |  108 +
 .../javamodules/rest/HelloResource.java         |   29 +
 .../javamodules/rest/HelloResourceTest.java     |   45 +
 .../src/test/resources/arquillian.xml           |   33 +
 examples/mp-faulttolerance-retry/README.md      |  211 +
 examples/mp-faulttolerance-retry/pom.xml        |   69 +
 .../java/org/superbiz/rest/WeatherGateway.java  |  115 +
 .../WeatherGatewayBusyServiceException.java     |   20 +
 .../rest/WeatherGatewayTimeoutException.java    |   21 +
 .../java/org/superbiz/rest/WeatherService.java  |   73 +
 .../org/superbiz/rest/WeatherServiceTest.java   |   94 +
 .../src/test/resources/arquillian.xml           |   30 +
 .../src/test/resources/beans.xml                |    7 +
 examples/mp-metrics-counted/README.md           |    9 +-
 examples/mp-metrics-counted/pom.xml             |    4 +-
 examples/mp-metrics-timed/README.md             |    4 +-
 examples/mp-metrics-timed/pom.xml               |    6 +-
 examples/mvc-cxf/README.md                      |   23 +
 examples/mvc-cxf/pom.xml                        |  135 +
 .../superbiz/application/MVCApplication.java    |   23 +
 .../org/superbiz/controller/HomeController.java |   32 +
 .../superbiz/controller/PersonController.java   |  154 +
 .../main/java/org/superbiz/model/Address.java   |   72 +
 .../main/java/org/superbiz/model/Errors.java    |   50 +
 .../main/java/org/superbiz/model/Messages.java  |   39 +
 .../main/java/org/superbiz/model/Person.java    |  125 +
 .../superbiz/persistence/PersonProducer.java    |   43 +
 .../superbiz/persistence/PersonRepository.java  |   29 +
 .../src/main/resources/META-INF/beans.xml       |   24 +
 .../src/main/resources/META-INF/persistence.xml |   40 +
 .../src/main/webapp/WEB-INF/views/change.jsp    |  134 +
 .../src/main/webapp/WEB-INF/views/home.jsp      |   37 +
 .../src/main/webapp/WEB-INF/views/insert.jsp    |  131 +
 .../src/main/webapp/WEB-INF/views/list.jsp      |   92 +
 examples/mvc-cxf/src/main/webapp/index.jsp      |   28 +
 .../bootstrap/css/bootstrap-datepicker.css      |  471 ++
 .../resources/bootstrap/css/bootstrap-theme.css |  587 ++
 .../bootstrap/css/bootstrap-theme.css.map       |    1 +
 .../bootstrap/css/bootstrap-theme.min.css       |    6 +
 .../bootstrap/css/bootstrap-theme.min.css.map   |    1 +
 .../resources/bootstrap/css/bootstrap.css       | 6757 ++++++++++++++++++
 .../resources/bootstrap/css/bootstrap.css.map   |    1 +
 .../resources/bootstrap/css/bootstrap.min.css   |    6 +
 .../bootstrap/css/bootstrap.min.css.map         |    1 +
 .../fonts/glyphicons-halflings-regular.eot      |  Bin 0 -> 20127 bytes
 .../fonts/glyphicons-halflings-regular.svg      |  288 +
 .../fonts/glyphicons-halflings-regular.ttf      |  Bin 0 -> 45404 bytes
 .../fonts/glyphicons-halflings-regular.woff     |  Bin 0 -> 23424 bytes
 .../fonts/glyphicons-halflings-regular.woff2    |  Bin 0 -> 18028 bytes
 .../bootstrap/js/bootstrap-datepicker.js        | 2096 ++++++
 .../js/bootstrap-datepicker.pt-BR.min.js        |    1 +
 .../webapp/resources/bootstrap/js/bootstrap.js  | 2377 ++++++
 .../resources/bootstrap/js/bootstrap.min.js     |    7 +
 .../webapp/resources/bootstrap/js/jquery.min.js |    4 +
 .../main/webapp/resources/bootstrap/js/npm.js   |   13 +
 .../src/main/webapp/resources/images/tomee.png  |  Bin 0 -> 6217 bytes
 .../src/main/webapp/templates/footer.jsp        |   46 +
 .../mvc-cxf/src/main/webapp/templates/menu.jsp  |   47 +
 examples/pom.xml                                |   19 +-
 examples/quartz-app/README.md                   |    6 +-
 examples/realm-in-tomee/README.md               |    6 +-
 .../README.md                                   |    6 +-
 .../moviefun/MoviesArquillianHtmlUnitTest.java  |    2 +-
 .../openejb/test/SuperInterceptedBean.java      |    6 +-
 .../entity/bmp/BasicBmp2DataSourcesBean.java    |    4 +-
 .../openejb/test/entity/bmp/RmiIiopBmpBean.java |    1 -
 .../test/interceptor/ClassInterceptor.java      |   10 +-
 .../openejb/test/interceptor/DDInterceptor.java |   10 +-
 .../test/interceptor/MethodInterceptor.java     |    4 +-
 .../interceptor/SecondClassInterceptor.java     |   10 +-
 .../test/interceptor/SuperClassInterceptor.java |   10 +-
 .../test/singleton/BeanTxSingletonBean.java     |    1 -
 .../test/stateless/BeanTxStatelessBean.java     |    1 -
 .../org/apache/openejb/test/RiTestServer.java   |    1 -
 maven/tomee-webapp-archetype/pom.xml            |    4 +-
 .../main/resources/archetype-resources/pom.xml  |    8 +-
 .../microprofile/jwt/cdi/MPJWTCDIExtension.java |    7 +-
 .../META-INF/org.apache.openejb.extension       |    1 -
 pom.xml                                         |   10 +-
 .../apache/openejb/server/axis/AxisService.java |    8 +-
 .../openejb/server/axis/AxisWsContainer.java    |   17 +-
 .../openejb/server/axis/EjbRpcProvider.java     |   22 +-
 .../openejb/server/axis/PojoProvider.java       |   21 +
 .../server/axis/ReadOnlyServiceDesc.java        |  208 +
 .../assembler/CommonsSchemaInfoBuilder.java     |   14 +-
 .../axis/assembler/CommonsSchemaLoader.java     |   11 +-
 .../HeavyweightOperationInfoBuilder.java        |  112 +-
 .../assembler/HeavyweightTypeInfoBuilder.java   |   26 +-
 .../server/axis/assembler/JaxRpcFaultInfo.java  |    2 +-
 .../axis/assembler/JaxRpcOperationInfo.java     |    4 +-
 .../axis/assembler/JaxRpcServiceInfo.java       |    4 +-
 .../assembler/JaxRpcServiceInfoBuilder.java     |    2 +-
 .../server/axis/assembler/JaxRpcTypeInfo.java   |    2 +-
 .../assembler/LightweightTypeInfoBuilder.java   |    4 +-
 .../server/axis/assembler/XmlSchemaInfo.java    |    4 +-
 .../server/axis/assembler/XmlTypeInfo.java      |    4 +-
 .../server/axis/client/ArrayTypeInfo.java       |   10 +
 .../server/axis/client/AxisClientImpl.java      |    6 +
 .../axis/client/AxisServiceReference.java       |    6 +
 .../client/GenericServiceEndpointWrapper.java   |    3 +
 .../axis/client/NoOverrideCallbackFilter.java   |    8 +
 .../ServiceEndpointMethodInterceptor.java       |   10 +
 .../axis/client/ServiceMethodInterceptor.java   |   10 +
 .../server/cli/command/ClassLoaderCommand.java  |    2 +-
 .../server/cli/command/DeployedAppCommand.java  |    2 +-
 .../server/cxf/rs/TestCLIFromJaxRSTest.java     |   70 +
 .../org/apache/openejb/daemon/NTService.java    |    9 +-
 .../openejb/server/ejbd/AuthRequestHandler.java |   14 +-
 .../apache/openejb/server/ejbd/CallContext.java |   10 +-
 .../server/ejbd/ClientObjectFactory.java        |    6 +-
 .../apache/openejb/server/ejbd/EjbDaemon.java   |   28 +-
 .../openejb/server/ejbd/EjbRequestHandler.java  |   38 +-
 .../openejb/server/ejbd/JndiRequestHandler.java |   22 +-
 .../openejb/server/ejbd/KeepAliveServer.java    |   14 +-
 .../server/ejbd/LogoutRequestHandler.java       |   15 +-
 .../openejb/server/ejbd/ServerSideResolver.java |    4 +-
 .../openejb/server/discovery/EchoNet.java       |    2 +-
 .../discovery/MulticastDiscoveryAgent.java      |   10 +-
 .../server/discovery/MulticastPulseAgent.java   |   46 +-
 .../discovery/MultipointDiscoveryAgent.java     |   12 +-
 .../server/discovery/MultipointServer.java      |   58 +-
 .../openejb/server/discovery/Tracker.java       |   10 +-
 .../apache/openejb/server/DiscoveryAgent.java   |    6 +-
 .../openejb/server/DiscoveryListener.java       |    1 -
 .../openejb/server/DiscoveryRegistry.java       |   14 +-
 .../openejb/server/FilteredServiceManager.java  |    2 +-
 .../java/org/apache/openejb/server/Main.java    |    1 -
 .../openejb/server/ServiceAccessController.java |    4 +-
 .../apache/openejb/server/ServiceDaemon.java    |   18 +-
 .../apache/openejb/server/ServiceManager.java   |    2 +-
 .../java/org/apache/openejb/server/Start.java   |    2 +-
 .../org/apache/openejb/server/admin/Stop.java   |    6 +-
 .../server/auth/ExactIPAddressPermission.java   |    1 +
 .../server/auth/ExactIPv6AddressPermission.java |    1 +
 .../auth/FactorizedIPAddressPermission.java     |    1 +
 .../server/auth/IPAddressPermissionEditor.java  |    2 +
 .../server/auth/NetmaskIPAddressPermission.java |    1 +
 .../auth/NetmaskIPv6AddressPermission.java      |    1 +
 .../server/auth/PermitAllPermission.java        |    1 +
 .../auth/StartWithIPAddressPermission.java      |    1 +
 .../apache/openejb/server/osgi/Activator.java   |    2 +
 .../server/osgi/ServiceManagerExtender.java     |    6 +-
 .../server/stream/CountingOutputStream.java     |    2 +
 .../LightWeightMappingValidator.java            |   12 +-
 .../openejb/server/webservices/WsService.java   |   71 +-
 .../openejb/server/webservices/WsServlet.java   |   27 +-
 .../openejb/server/webservices/WsdlVisitor.java |    4 +-
 .../webservices/saaj/MessageFactoryImpl.java    |    2 +
 .../webservices/saaj/SaajFactoryFinder.java     |   10 +-
 .../webservices/saaj/SaajMetaFactoryImpl.java   |    2 +
 .../server/webservices/saaj/SaajUniverse.java   |   18 +-
 .../saaj/SoapConnectionFactoryImpl.java         |    1 +
 .../webservices/saaj/SoapFactoryImpl.java       |    8 +
 tck/cdi-embedded/dev-tests.xml                  |   60 +
 tck/cdi-tomee/dev-tests.xml                     |   62 +
 .../test/resources/META-INF/cdi-tck.properties  |    2 +-
 tck/microprofile-tck/config/pom.xml             |    6 +
 .../MicroProfileConfigTCKArchiveProcessor.java  |   12 +-
 ...croProfileRestClientTCKArchiveProcessor.java |   71 -
 .../MicroProfileRestClientTCKExtension.java     |   27 -
 ....jboss.arquillian.core.spi.LoadableExtension |    1 -
 tomee/apache-tomee/pom.xml                      |   12 +
 .../apache/tomee/RemoteTomEEEJBContainer.java   |    6 +-
 .../src/test/java/org/apache/tomee/Test.java    |   24 +
 .../java/org/apache/tomee/TestCommand1.java     |   25 +
 .../java/org/apache/tomee/TestCommand2.java     |   26 +
 .../test/java/org/apache/tomee/TomEECliIT.java  |  283 +
 .../catalina/OpenEJBNamingContextListener.java  |    4 +-
 .../tomee/catalina/OpenEJBNamingResource.java   |    4 +-
 .../tomee/catalina/TomEEWebappLoader.java       |    4 +-
 .../org/apache/tomee/catalina/TomcatLoader.java |   22 +-
 .../tomee/catalina/TomcatWebAppBuilder.java     |   10 +-
 .../org/apache/tomee/common/NamingUtil.java     |   12 +-
 .../org/apache/tomee/installer/Installer.java   |   18 +-
 .../java/org/apache/tomee/embedded/Main.java    |    2 +-
 .../jul/formatter/SimpleTomEEFormatter.java     |    6 +-
 .../jul/handler/rotating/LocalFileHandler.java  |    9 +-
 .../jul/formatter/SimpleTomEEFormatterTest.java |    6 +-
 .../org/apache/tomee/loader/LoaderServlet.java  |    4 +-
 .../apache/tomee/loader/OpenEJBListener.java    |    9 +-
 .../microprofile/config/TomEEConfigSource.java  |   64 +
 ...eclipse.microprofile.config.spi.ConfigSource |   17 +
 .../openejb/mockito/MockitoExtension.java       |    2 +-
 1013 files changed, 50198 insertions(+), 34520 deletions(-)
----------------------------------------------------------------------



[5/6] tomee git commit: Fixed pom.xml and made minor enhancements to WeatherService.java

Posted by jg...@apache.org.
Fixed pom.xml and made minor enhancements to WeatherService.java


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/a6b66e17
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/a6b66e17
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/a6b66e17

Branch: refs/heads/master
Commit: a6b66e17aa0f6a80e826876117e7fe214703b502
Parents: f6d3dab
Author: Michael P. Redlich <mi...@redlich.net>
Authored: Mon Dec 10 20:04:15 2018 -0500
Committer: Michael P. Redlich <mi...@redlich.net>
Committed: Mon Dec 10 20:04:15 2018 -0500

----------------------------------------------------------------------
 examples/mp-metrics-histogram/README.md         |   2 +-
 examples/mp-metrics-histogram/pom.xml           |  36 +++-
 .../org/superbiz/histogram/WeatherService.java  |   5 +-
 .../src/main/webapp/WEB-INF/web.xml             |  25 +++
 examples/mp-metrics-histogram/url-output.txt    | 164 -------------------
 5 files changed, 57 insertions(+), 175 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/a6b66e17/examples/mp-metrics-histogram/README.md
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/README.md b/examples/mp-metrics-histogram/README.md
index 0679a44..c948cd5 100644
--- a/examples/mp-metrics-histogram/README.md
+++ b/examples/mp-metrics-histogram/README.md
@@ -78,7 +78,7 @@ Denotes if a metric with a certain name can be registered in more than one place
 
 ##### For the histogram status:
 
-    GET http://localhost:8080/mp-metrics-histogram/weather/histogram/status`
+    GET http://localhost:8080/mp-metrics-histogram/weather/histogram/status
 
 ##### Reponse:
      

http://git-wip-us.apache.org/repos/asf/tomee/blob/a6b66e17/examples/mp-metrics-histogram/pom.xml
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/pom.xml b/examples/mp-metrics-histogram/pom.xml
index 8721745..5542a05 100644
--- a/examples/mp-metrics-histogram/pom.xml
+++ b/examples/mp-metrics-histogram/pom.xml
@@ -20,15 +20,22 @@
 <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>
 
+    <groupId>org.superbiz</groupId>
     <artifactId>mp-metrics-histogram</artifactId>
+    <version>8.0.0-SNAPSHOT</version>
     <packaging>war</packaging>
+    <name>OpenEJB :: Examples :: Microprofile Metrics Histogram</name>
+
+    <properties>
+        <version.javaee-api>8.0</version.javaee-api>
+        <microprofile.metrics.version>1.1</microprofile.metrics.version>
+        <version.arquillian.bom>1.1.13.Final</version.arquillian.bom>
+        <tomee.version>${project.version}</tomee.version>
+        <junit.version>4.12</junit.version>
+    </properties>
 
     <dependencies>
         <dependency>
@@ -44,6 +51,12 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>${junit.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>org.apache.tomee</groupId>
             <artifactId>openejb-cxf-rs</artifactId>
             <version>${tomee.version}</version>
@@ -79,9 +92,18 @@
                 <version>${project.version}</version>
                 <configuration>
                     <tomeeClassifier>microprofile</tomeeClassifier>
-                    <context>${artifactId}</context>
+                    <context>${project.artifactId}</context>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>3.7.0</version>
+                <configuration>
+                    <source>1.8</source>
+                    <target>1.8</target>
                 </configuration>
             </plugin>
         </plugins>
     </build>
-</project>
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tomee/blob/a6b66e17/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java b/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java
index 79a264b..e121583 100644
--- a/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java
+++ b/examples/mp-metrics-histogram/src/main/java/org/superbiz/histogram/WeatherService.java
@@ -31,11 +31,11 @@ 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 {
 
+    final static int[] RECENT_NEW_YORK_TEMPS = { 46, 45, 50, 46, 45, 27, 30, 48, 55, 54, 45, 41, 45, 43, 46 };
+
     @Inject
     private MetricRegistry registry;
 
@@ -50,7 +50,6 @@ public class WeatherService {
     public Histogram getTemperatures() {
         Metadata metadata = new Metadata("temperatures", MetricType.HISTOGRAM, "degrees F");
         metadata.setDescription("A histogram of recent New York temperatures.");
-        final int[] RECENT_NEW_YORK_TEMPS = { 46, 45, 50, 46, 45, 27, 30, 48, 55, 54, 45, 41, 45, 43, 46 };
         histogram = registry.histogram(metadata);
         for(int temp : RECENT_NEW_YORK_TEMPS) {
             histogram.update(temp);

http://git-wip-us.apache.org/repos/asf/tomee/blob/a6b66e17/examples/mp-metrics-histogram/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/src/main/webapp/WEB-INF/web.xml b/examples/mp-metrics-histogram/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..b2ccf01
--- /dev/null
+++ b/examples/mp-metrics-histogram/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+     Licensed to the Apache Software Foundation (ASF) under one or more
+     contributor license agreements.  See the NOTICE file distributed with
+     this work for additional information regarding copyright ownership.
+     The ASF licenses this file to You under the Apache License, Version 2.0
+     (the "License"); you may not use this file except in compliance with
+     the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+  -->
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+         metadata-complete="false"
+         version="2.5">
+
+  <display-name>Microprofile Metrics Histogram</display-name>
+</web-app>

http://git-wip-us.apache.org/repos/asf/tomee/blob/a6b66e17/examples/mp-metrics-histogram/url-output.txt
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-histogram/url-output.txt b/examples/mp-metrics-histogram/url-output.txt
deleted file mode 100644
index 2963b78..0000000
--- a/examples/mp-metrics-histogram/url-output.txt
+++ /dev/null
@@ -1,164 +0,0 @@
-Last login: Tue Dec  4 18:42:11 on ttys001
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/health
-{"checks":[],"outcome":"UP","status":"UP"}%                                                                                                                         ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics
-# TYPE application:org_superbiz_histogram_weather_service_temperatures summary histogram
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_count histogram
-application:org_superbiz_histogram_weather_service_temperatures_count 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_min histogram
-application:org_superbiz_histogram_weather_service_temperatures_min 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_max histogram
-application:org_superbiz_histogram_weather_service_temperatures_max 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_mean histogram
-application:org_superbiz_histogram_weather_service_temperatures_mean NaN
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_stddev histogram
-application:org_superbiz_histogram_weather_service_temperatures_stddev 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.5"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.75"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.95"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.98"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.99"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.999"} 0.0
-# TYPE base:gc_g1_young_generation_count counter
-base:gc_g1_young_generation_count 12.0
-# TYPE base:classloader_total_loaded_class_count counter
-base:classloader_total_loaded_class_count 9278.0
-# TYPE base:thread_count counter
-base:thread_count 39.0
-# TYPE base:gc_g1_old_generation_count counter
-base:gc_g1_old_generation_count 0.0
-# TYPE base:gc_g1_old_generation_time_seconds gauge
-base:gc_g1_old_generation_time_seconds 0.0
-# TYPE base:classloader_current_loaded_class_count counter
-base:classloader_current_loaded_class_count 9277.0
-# TYPE base:jvm_uptime_seconds gauge
-base:jvm_uptime_seconds 0.775262
-# TYPE base:thread_max_count counter
-base:thread_max_count 39.0
-# TYPE base:memory_committed_heap_bytes gauge
-base:memory_committed_heap_bytes 1.09051904E8
-# TYPE base:cpu_available_processors gauge
-base:cpu_available_processors 8.0
-# TYPE base:thread_daemon_count counter
-base:thread_daemon_count 38.0
-# TYPE base:gc_g1_young_generation_time_seconds gauge
-base:gc_g1_young_generation_time_seconds 1.24E-4
-# TYPE base:classloader_total_unloaded_class_count counter
-base:classloader_total_unloaded_class_count 9278.0
-# TYPE base:memory_max_heap_bytes gauge
-base:memory_max_heap_bytes 2.147483648E9
-# TYPE base:memory_used_heap_bytes gauge
-base:memory_used_heap_bytes 4.8121048E7
-# TYPE vendor:start_time counter
-vendor:start_time 1.543967001744E12
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/histogram
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/histogram/histogram
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X OPTIONS http://localhost:8080/mp-metrics-histogram/metrics/histogram
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X OPTIONS http://localhost:8080/mp-metrics-histogram/metrics/histogram/histogram
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/openapi
-{"openapi":"3.0.1","paths":{"/health":{"get":{"operationId":"getChecks","parameters":[]}},"/weather/histogram/status":{"get":{"operationId":"histogramStatus","parameters":[]}},"/weather/histogram":{"get":{"operationId":"getTemperatures","parameters":[]}},"/openapi":{"get":{"operationId":"get","parameters":[]}},"/metrics/{registry}":{"get":{"operationId":"getText","parameters":[{"name":"registry","required":true,"schema":{"type":"string"},"style":"simple"}]},"options":{"operationId":"getMetadata","parameters":[{"name":"registry","required":true,"schema":{"type":"string"},"style":"simple"}]}},"/metrics":{"get":{"operationId":"getText","parameters":[]}},"/metrics/{registry}/{metric}":{"get":{"operationId":"getJson","parameters":[{"name":"registry","required":true,"schema":{"type":"string"},"style":"simple"},{"name":"metric","required":true,"schema":{"type":"string"},"style":"simple"}]},"options":{"operationId":"getMetadata","parameters":[{"name":"registry","required":true,"schema":{"ty
 pe":"string"},"style":"simple"},{"name":"metric","required":true,"schema":{"type":"string"},"style":"simple"}]}}}}%                                    ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X OPTIONS http://localhost:8080/mp-metrics-histogram/metrics/registry/metric
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/weather/histogram
-{"count":15,"max":55,"mean":44.4,"min":27,"p50":45.0,"p75":46.0,"p95":54.0,"p98":54.0,"p99":54.0,"p999":54.0,"stddev":7.0710678118654755,"unit":"degrees F"}%       ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/weather/histogram/status
-Here are the most recent New York City temperatures.%                                                                                                               ╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/application
-# TYPE application:temperatures_degrees F summary histogram
-# TYPE application:temperatures_degrees F_count histogram
-application:temperatures_degrees F_count 15.0
-# TYPE application:temperatures_min_degrees F histogram
-application:temperatures_min_degrees F 27.0
-# TYPE application:temperatures_max_degrees F histogram
-application:temperatures_max_degrees F 55.0
-# TYPE application:temperatures_mean_degrees F histogram
-application:temperatures_mean_degrees F 44.4
-# TYPE application:temperatures_stddev_degrees F histogram
-application:temperatures_stddev_degrees F 7.0710678118654755
-# TYPE application:temperatures_degrees F histogram
-application:temperatures_degrees F{quantile="0.5"} 45.0
-# TYPE application:temperatures_degrees F histogram
-application:temperatures_degrees F{quantile="0.75"} 46.0
-# TYPE application:temperatures_degrees F histogram
-application:temperatures_degrees F{quantile="0.95"} 54.0
-# TYPE application:temperatures_degrees F histogram
-application:temperatures_degrees F{quantile="0.98"} 54.0
-# TYPE application:temperatures_degrees F histogram
-application:temperatures_degrees F{quantile="0.99"} 54.0
-# TYPE application:temperatures_degrees F histogram
-application:temperatures_degrees F{quantile="0.999"} 54.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures summary histogram
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_count histogram
-application:org_superbiz_histogram_weather_service_temperatures_count 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_min histogram
-application:org_superbiz_histogram_weather_service_temperatures_min 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_max histogram
-application:org_superbiz_histogram_weather_service_temperatures_max 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_mean histogram
-application:org_superbiz_histogram_weather_service_temperatures_mean NaN
-# TYPE application:org_superbiz_histogram_weather_service_temperatures_stddev histogram
-application:org_superbiz_histogram_weather_service_temperatures_stddev 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.5"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.75"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.95"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.98"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.99"} 0.0
-# TYPE application:org_superbiz_histogram_weather_service_temperatures histogram
-application:org_superbiz_histogram_weather_service_temperatures{quantile="0.999"} 0.0
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/base
-# TYPE base:gc_g1_young_generation_count counter
-base:gc_g1_young_generation_count 12.0
-# TYPE base:classloader_total_loaded_class_count counter
-base:classloader_total_loaded_class_count 9320.0
-# TYPE base:thread_count counter
-base:thread_count 39.0
-# TYPE base:gc_g1_old_generation_count counter
-base:gc_g1_old_generation_count 0.0
-# TYPE base:gc_g1_old_generation_time_seconds gauge
-base:gc_g1_old_generation_time_seconds 0.0
-# TYPE base:classloader_current_loaded_class_count counter
-base:classloader_current_loaded_class_count 9319.0
-# TYPE base:jvm_uptime_seconds gauge
-base:jvm_uptime_seconds 1.180734
-# TYPE base:thread_max_count counter
-base:thread_max_count 39.0
-# TYPE base:memory_committed_heap_bytes gauge
-base:memory_committed_heap_bytes 1.09051904E8
-# TYPE base:cpu_available_processors gauge
-base:cpu_available_processors 8.0
-# TYPE base:thread_daemon_count counter
-base:thread_daemon_count 38.0
-# TYPE base:gc_g1_young_generation_time_seconds gauge
-base:gc_g1_young_generation_time_seconds 1.24E-4
-# TYPE base:classloader_total_unloaded_class_count counter
-base:classloader_total_unloaded_class_count 9320.0
-# TYPE base:memory_max_heap_bytes gauge
-base:memory_max_heap_bytes 2.147483648E9
-# TYPE base:memory_used_heap_bytes gauge
-base:memory_used_heap_bytes 4.8121048E7
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤  curl -X GET http://localhost:8080/mp-metrics-histogram/metrics/vendor
-# TYPE vendor:start_time counter
-vendor:start_time 1.543967001744E12
-╭─mpredli01@Michaels-MacBook-Pro-4.local ~
-╰─➤