/*******************************************************************************
* Copyright (c) 2007 Red Hat, Inc.
* Distributed under license by Red Hat, Inc. All rights reserved.
* This program is made available under the terms of the
* Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
******************************************************************************/
package org.jboss.tools.cdi.internal.core.impl.definition;
import java.util.HashSet;
import java.util.Set;
import org.jboss.tools.cdi.core.CDIConstants;
/**
*
* @author Viacheslav Kabanovich
*
*/
public class AnnotationHelper implements CDIConstants {
public static final Set<String> BASIC_ANNOTATION_TYPES = new HashSet<String>();
public static final Set<String> CDI_ANNOTATION_TYPES = new HashSet<String>();
public static final Set<String> SCOPE_ANNOTATION_TYPES = new HashSet<String>();
public static final Set<String> QUALIFIER_ANNOTATION_TYPES = new HashSet<String>();
public static final Set<String> STEREOTYPE_ANNOTATION_TYPES = new HashSet<String>();
static {
BASIC_ANNOTATION_TYPES.add(INHERITED_ANNOTATION_TYPE_NAME);
BASIC_ANNOTATION_TYPES.add(TARGET_ANNOTATION_TYPE_NAME);
BASIC_ANNOTATION_TYPES.add(RETENTION_ANNOTATION_TYPE_NAME);
BASIC_ANNOTATION_TYPES.add(STATEFUL_ANNOTATION_TYPE_NAME);
BASIC_ANNOTATION_TYPES.add(STATELESS_ANNOTATION_TYPE_NAME);
BASIC_ANNOTATION_TYPES.add(SINGLETON_ANNOTATION_TYPE_NAME);
SCOPE_ANNOTATION_TYPES.add(APPLICATION_SCOPED_ANNOTATION_TYPE_NAME);
SCOPE_ANNOTATION_TYPES.add(CONVERSATION_SCOPED_ANNOTATION_TYPE_NAME);
SCOPE_ANNOTATION_TYPES.add(REQUEST_SCOPED_ANNOTATION_TYPE_NAME);
SCOPE_ANNOTATION_TYPES.add(SESSION_SCOPED_ANNOTATION_TYPE_NAME);
SCOPE_ANNOTATION_TYPES.add(DEPENDENT_ANNOTATION_TYPE_NAME);
SCOPE_ANNOTATION_TYPES.add(SINGLETON_SCOPED_ANNOTATION_TYPE_NAME);
STEREOTYPE_ANNOTATION_TYPES.add(MODEL_STEREOTYPE_TYPE_NAME);
STEREOTYPE_ANNOTATION_TYPES.add(DECORATOR_STEREOTYPE_TYPE_NAME);
STEREOTYPE_ANNOTATION_TYPES.add(DELEGATE_STEREOTYPE_TYPE_NAME);
QUALIFIER_ANNOTATION_TYPES.add(ANY_QUALIFIER_TYPE_NAME);
QUALIFIER_ANNOTATION_TYPES.add(DEFAULT_QUALIFIER_TYPE_NAME);
QUALIFIER_ANNOTATION_TYPES.add(NEW_QUALIFIER_TYPE_NAME);
QUALIFIER_ANNOTATION_TYPES.add(NAMED_QUALIFIER_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(QUALIFIER_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(STEREOTYPE_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(TYPED_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(PRODUCES_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(SCOPE_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(NORMAL_SCOPE_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(INJECT_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(ALTERNATIVE_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(INTERCEPTOR_BINDING_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.add(INTERCEPTOR_ANNOTATION_TYPE_NAME);
CDI_ANNOTATION_TYPES.addAll(SCOPE_ANNOTATION_TYPES);
CDI_ANNOTATION_TYPES.addAll(STEREOTYPE_ANNOTATION_TYPES);
CDI_ANNOTATION_TYPES.addAll(QUALIFIER_ANNOTATION_TYPES);
}
}