Examples of ViolationMessageBuilder


Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

    }

    public static void throwUnsatisfiedResolutionException(
            Class type, InjectionPoint injectionPoint, Annotation... qualifiers)
    {
        ViolationMessageBuilder violationMessage =
                newViolation("Api type [", type.getName(), "] is not found with the qualifiers ");

        violationMessage.addLine(createQualifierMessage(qualifiers));

        if (injectionPoint != null)
        {
            violationMessage.addLine("for injection into ", injectionPoint.toString());
        }

        throw new UnsatisfiedResolutionException(violationMessage.toString());
    }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

    public static void throwAmbiguousResolutionException(Set<Bean<?>> beans, Class type, InjectionPoint injectionPoint, Annotation... qualifiers)
    {
        String qualifierMessage = createQualifierMessage(qualifiers);

        ViolationMessageBuilder violationMessage;

        if(type != null)
        {
            violationMessage = newViolation("There is more than one api type with : ",
                    ClassUtil.getClass(type).getName(), " with qualifiers : ", qualifierMessage);
            if (injectionPoint != null)
            {
                violationMessage.addLine("for injection into ", injectionPoint.toString());
            }
        }
        else
        {
            violationMessage = newViolation("Ambigious resolution");
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

                        .toString());
    }

    public static void throwUnsatisfiedResolutionException(Type type, Method producerMethod, Annotation... qualifiers)
    {
        ViolationMessageBuilder violationMessage = newViolation(createProducerMethodMessage(producerMethod));

        violationMessage.append(" in class: ", ClassUtil.getClass(type).getName());
        violationMessage.addLine(createQualifierMessage(qualifiers));

        throw new UnsatisfiedResolutionException(violationMessage.toString());
    }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

        //Unproxiable test for NormalScoped beans
        if (isScopeTypeNormal(scopeType))
        {
            Set<Type> types = bean.getTypes();

            ViolationMessageBuilder violationMessage = ViolationMessageBuilder.newViolation();

            for(Type type : types)
            {
                Class<?> beanClass = ClassUtil.getClass(type);

                if(!beanClass.isInterface() && beanClass != Object.class)
                {
                    if(beanClass.isPrimitive())
                    {
                        violationMessage.addLine("It isn't possible to use a primitive type (" + beanClass.getName(), ")");
                    }

                    if(ClassUtil.isArray(beanClass))
                    {
                        violationMessage.addLine("It isn't possible to use an array type (", beanClass.getName(), ")");
                    }

                    if(!violationMessage.containsViolation())
                    {
                        if (ClassUtil.isFinal(beanClass.getModifiers()))
                        {
                            violationMessage.addLine(beanClass.getName(), " is a final class! CDI doesn't allow that.");
                        }

                        Method[] methods = SecurityUtil.doPrivilegedGetDeclaredMethods(beanClass);
                        for (Method m : methods)
                        {
                            int modifiers = m.getModifiers();
                            if (ClassUtil.isFinal(modifiers) && !Modifier.isPrivate(modifiers) &&
                                !m.isSynthetic() && !m.isBridge())
                            {
                                violationMessage.addLine(beanClass.getName(), " has final method "+ m + " CDI doesn't allow that.");
                            }
                        }

                        Constructor<?> cons = getNoArgConstructor(beanClass);
                        if (cons == null)
                        {
                            violationMessage.addLine(beanClass.getName(), " has no explicit no-arg constructor!",
                                    "A public or protected constructor without args is required!");
                        }
                        else if (Modifier.isPrivate(cons.getModifiers()))
                        {
                            violationMessage.addLine(beanClass.getName(), " has a >private< no-arg constructor! CDI doesn't allow that.");
                        }
                    }

                    //Throw Exception
                    if(violationMessage.containsViolation())
                    {
                        throwUnproxyableResolutionException(violationMessage);
                    }
                }
            }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

        //Unproxiable test for NormalScoped beans
        if (WebBeansUtil.isScopeTypeNormal(scopeType))
        {
            Set<Type> types = bean.getTypes();

            ViolationMessageBuilder violationMessage = ViolationMessageBuilder.newViolation();

            for(Type type : types)
            {
                Class<?> beanClass = ClassUtil.getClass(type);

                if(!beanClass.isInterface() && beanClass != Object.class)
                {
                    if(ClassUtil.isPrimitive(beanClass))
                    {
                        violationMessage.addLine("It isn't possible to use a primitive type (" + beanClass.getName(), ")");
                    }

                    if(ClassUtil.isArray(beanClass))
                    {
                        violationMessage.addLine("It isn't possible to use an array type (", beanClass.getName(), ")");
                    }

                    if(!violationMessage.containsViolation())
                    {
                        Constructor<?> cons = ClassUtil.isContaintNoArgConstructor(beanClass);

                        if (ClassUtil.isFinal(beanClass.getModifiers()))
                        {
                            violationMessage.addLine(beanClass.getName(), " is a final class! CDI doesn't allow that.");
                        }
                        if (ClassUtil.hasFinalMethod(beanClass))
                        {
                            violationMessage.addLine(beanClass.getName(), " has final methods! CDI doesn't allow that.");
                        }
                        if (cons == null)
                        {
                            violationMessage.addLine(beanClass.getName(), " has no explicit no-arg constructor!",
                                    "A public or protected constructor without args is required!");
                        }
                        else if (ClassUtil.isPrivate(cons.getModifiers()))
                        {
                            violationMessage.addLine(beanClass.getName(), " has a >private< no-arg constructor! CDI doesn't allow that.");
                        }
                    }

                    //Throw Exception
                    if(violationMessage.containsViolation())
                    {
                        throwUnproxyableResolutionException(violationMessage);
                    }
                }
            }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

                        .toString());
    }
   
    public static void throwBeanNotFoundException(Class type, Annotation... qualifiers)
    {
        ViolationMessageBuilder violationMessage =
                newViolation("Cannot find beans for class ", type.getCanonicalName());

        violationMessage.addLine(createQualifierMessage(qualifiers));

        throw new ResolutionException(violationMessage.toString());
    }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

        throw new ResolutionException(violationMessage.toString());
    }

    public static void throwUnsatisfiedResolutionException(String message, Method producerMethod)
    {
        ViolationMessageBuilder violationMessage = newViolation(message);

        violationMessage.addLine(createProducerMethodMessage(producerMethod));

        throw new UnsatisfiedResolutionException(violationMessage.toString());
    }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

        throw new UnsatisfiedResolutionException(violationMessage.toString());
    }

    public static void throwUnsatisfiedResolutionException(Type type, Method producerMethod, Annotation... qualifiers)
    {
        ViolationMessageBuilder violationMessage = newViolation(createProducerMethodMessage(producerMethod));

        violationMessage.append(" in class: ", ClassUtil.getClass(type).getName());
        violationMessage.addLine(createQualifierMessage(qualifiers));

        throw new UnsatisfiedResolutionException(violationMessage.toString());
    }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

    }

    public static void throwUnsatisfiedResolutionException(
            Class type, InjectionPoint injectionPoint, Annotation... qualifiers)
    {
        ViolationMessageBuilder violationMessage =
                newViolation("Api type [", type.getName(), "] is not found with the qualifiers ");

        violationMessage.addLine(createQualifierMessage(qualifiers));

        if (injectionPoint != null)
        {
            violationMessage.addLine("for injection into ", injectionPoint.toString());
        }

        throw new UnsatisfiedResolutionException(violationMessage.toString());
    }
View Full Code Here

Examples of org.apache.webbeans.exception.helper.ViolationMessageBuilder

    public static void throwAmbiguousResolutionException(Set<Bean<?>> beans, Class type, Annotation... qualifiers)
    {
        String qualifierMessage = createQualifierMessage(qualifiers);

        ViolationMessageBuilder violationMessage;

        if(type != null)
        {
            violationMessage = newViolation("There is more than one api type with : ",
                    ClassUtil.getClass(type).getName(), " with qualifiers : ", qualifierMessage);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.