/*
* JBoss, Home of Professional Open Source
* Copyright 2013, Red Hat, Inc., and individual contributors
* by the @authors tag. See the copyright.txt in the distribution for a
* full listing of individual contributors.
*
* Licensed 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.jboss.weld.tests.bootstrap.index.processAnnotatedType.type;
import javax.enterprise.event.Observes;
import javax.enterprise.inject.spi.Extension;
import javax.enterprise.inject.spi.ProcessAnnotatedType;
public class ProcessAnnotatedTypeObservers implements Extension {
/*
* Actual type
*/
void o001(@Observes ProcessAnnotatedType<Alpha1Interface> event) {
}
void o002(@Observes ProcessAnnotatedType<AlphaAbstract> event) {
}
void o003(@Observes ProcessAnnotatedType<AlphaImpl> event) {
}
void o004(@Observes ProcessAnnotatedType<Object> event) {
}
void o005(@Observes ProcessAnnotatedType<Alpha2Interface> event) {
}
void o006(@Observes ProcessAnnotatedType<Alpha2Interface<?>> event) {
}
void o007(@Observes ProcessAnnotatedType<Alpha2Interface<Number>> event) {
}
void o008(@Observes ProcessAnnotatedType<Alpha2Interface<String>> event) {
}
void o009(@Observes ProcessAnnotatedType<Alpha2Interface<? extends Number>> event) {
}
/*
* Type variables
*/
<T extends Alpha1Interface> void o101(@Observes ProcessAnnotatedType<T> event) {
}
<T extends AlphaAbstract> void o102(@Observes ProcessAnnotatedType<T> event) {
}
<T extends AlphaImpl> void o103(@Observes ProcessAnnotatedType<T> event) {
}
<T extends Object> void o104(@Observes ProcessAnnotatedType<T> event) {
}
<T> void o15(@Observes ProcessAnnotatedType<T> event) {
}
/*
* Wildcards
*/
void o201(@Observes ProcessAnnotatedType<? extends Alpha1Interface> event) {
}
void o202(@Observes ProcessAnnotatedType<? extends AlphaAbstract> event) {
}
void o203(@Observes ProcessAnnotatedType<? extends AlphaImpl> event) {
}
void o204(@Observes ProcessAnnotatedType<? extends Object> event) {
}
void o205(@Observes ProcessAnnotatedType<?> event) {
}
<T> void o401(@Observes T event) {
}
<T extends ProcessAnnotatedType<Alpha1Interface>> void o402(@Observes T event) {
}
<T extends ProcessAnnotatedType<AlphaAbstract>> void o403(@Observes T event) {
}
<T extends ProcessAnnotatedType<AlphaImpl>> void o404(@Observes T event) {
}
<T extends ProcessAnnotatedType<Object>> void o405(@Observes T event) {
}
<T extends ProcessAnnotatedType<Alpha2Interface>> void o406(@Observes T event) {
}
}