/**
 * 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.
 */
package org.apache.camel.cdi;

import javax.enterprise.util.Nonbinding;
import javax.inject.Qualifier;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * An injection annotation to define the <a href="http://camel.apache.org/uris.html">Camel URI</a> used to reference the
 * underlying <a href="http://camel.apache.org/endpoint.html">Camel Endpoint</a>. This annotation can be used to
 * annotate an @Inject injection point for values of type {@link org.apache.camel.Endpoint} or {@link
 * org.apache.camel.ProducerTemplate} with a String URI. For example: <code>public class Foo { @Inject @Uri("mock:foo")
 * Endpoint endpoint;
 *
 * @Inject @Uri("seda:bar") ProducerTemplate producer; }</code>
 */
@Qualifier
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER})
public @interface Uri {

    /**
     * Returns the <a href="http://camel.apache.org/uris.html">Camel URI</a> of the endpoint
     */
    @Nonbinding String value();
}

@@ -1074,30 +1074,22 @@
  * A
-n injection annotation
+ CDI qualifier
  to 
@@ -1161,110 +1161,47 @@
 /a%3E 
-used to reference the%0A * underlying %3Ca href=%22http://camel.apache.org/endpoint.html%22%3ECamel Endpoint%3C/a%3E
+associated to%0A * the annotated resource
 . Th
@@ -1228,19 +1228,16 @@
  used to
-%0A *
  annotat
@@ -1241,23 +1241,31 @@
 tate an 
+%7B@code 
 @Inject
+%7D
  injecti
@@ -1276,16 +1276,19 @@
 oint for
+%0A *
  values 
@@ -1338,19 +1338,16 @@
 r %7B@link
-%0A *
  org.apa
@@ -1377,75 +1377,75 @@
 ate%7D
- with a String URI. For example: %3Ccode%3Epublic class Foo %7B
+. For example:%0A * %3Cpre%3E%3Ccode%3E%0A * %7B@literal
  @
+%7D
 Inject
+%0A * %7B@literal
  @
+%7D
 Uri(
@@ -1488,17 +1488,42 @@
 %0A * 
-@Inject @
+%7B@literal @%7DInject%0A * %7B@literal @%7D
 Uri(
@@ -1533,16 +1533,19 @@
 da:bar%22)
+%0A *
  Produce
@@ -1567,17 +1567,25 @@
 cer;
+%0A *
  
-%7D
 %3C/code%3E
+%3C/pre%3E
 %0A */
@@ -1843,24 +1843,479 @@
 the 
-endpoint%0A     */
+resource.%0A     */%0A    @Nonbinding String value();%0A%0A    /**%0A     * Returns the name of the %7B@code CamelContext%7D to use to resolve the Camel resource for this URI.%0A     *%0A     * @deprecated Use the %7B@link ContextName%7D qualifier to specify the name of the %7B@code CamelContext%7D instead:%0A     * %3Cpre%3E%3Ccode%3E%0A     * %7B@literal @%7DInject%0A     * %7B@literal @%7DContextName(%22foo%22)%0A     * %7B@literal @%7DUri(%22seda:bar%22)%0A     * Endpoint endpoint;%0A     * %3C/code%3E%3C/pre%3E%0A     */%0A    @Deprecated
 %0A   
@@ -2334,19 +2334,32 @@
  String 
-value()
+context() default %22%22
 ;%0A%7D%0A

Correct @Uri Javadoc