Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 * JBoss, Home of Professional Open Source
 * Copyright 2009, Red Hat, Inc. and/or its affiliates, 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
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* See the License for the specific language governing permissions and
* limitations under the License.
package org.hibernate.validator.internal.util.annotationfactory;
Creates live annotations (actually AnnotationProxies) from AnnotationDescriptors.

Paolo Perrotta
Davide Marchignoli
Hardy Ferentschik
See also:
public class AnnotationFactory {
	public static <T extends Annotation> T create(AnnotationDescriptor<T> descriptor) {
		ClassLoader classLoader = ReflectionHelper.getClassLoaderFromContext();
		Class<T> proxyClass = ( Class<T> ) Proxy.getProxyClassclassLoaderdescriptor.type() );
		InvocationHandler handler = new AnnotationProxydescriptor );
		try {
			return getProxyInstanceproxyClasshandler );
		catch ( RuntimeException e ) {
			throw e;
		catch ( Exception e ) {
			throw new RuntimeExceptione );
	private static <T extends Annotation> T getProxyInstance(Class<T> proxyClassInvocationHandler handlerthrows
		final Constructor<T> constructor = ReflectionHelper.getConstructorproxyClassInvocationHandler.class );
		return ReflectionHelper.newConstructorInstanceconstructorhandler );
New to GrepCode? Check out our FAQ X