validation/validation-aspect/src/main/java/se/jguru/nazgul/tools/validation/aspect/ValidationAspect.java
@Pointcut(value = "initialization(se.jguru.nazgul.tools.validation.api.Validatable+.new(..)) && if()",
            argNames = "joinPoint")
    public static boolean anyNonDefaultConstructor(final JoinPoint joinPoint) {

        // Extract the JoinPoint signature.
        final Signature signature = joinPoint.getSignature();
        final boolean isConstructorSignature = signature instanceof ConstructorSignature;

        if (isConstructorSignature) {

            final Constructor constructor = ((ConstructorSignature) signature).getConstructor();
            final boolean isNonDefaultConstructor = constructor != null && constructor.getParameters().length > 0;

            log.trace("Non-Default Constructor signature [" + signature.toString() + "] for ["
                    + (constructor == null ? "<null>" : constructor.toString()) + "]: " + isNonDefaultConstructor);

            // All Done.
            return isNonDefaultConstructor;

        } else {
            log.debug("Found non-constructor signature: " + signature);
        }

        // Nopes.
        return false;
    }
@Pointcut(value = "initialization(se.jguru.nazgul.tools.validation.api.Validatable+.new(..)) && if()",
            argNames = "joinPoint")
    public static boolean anyNonDefaultConstructor(final JoinPoint joinPoint) {

        // Extract the JoinPoint signature.
        final Signature signature = joinPoint.getSignature();
        final boolean isConstructorSignature = signature instanceof ConstructorSignature;

        if (isConstructorSignature) {

            final Constructor constructor = ((ConstructorSignature) signature).getConstructor();
            final boolean isNonDefaultConstructor = constructor != null && constructor.getParameters().length > 0;

            log.trace("Non-Default Constructor signature [" + signature.toString() + "] for ["
                    + (constructor == null ? "<null>" : constructor.toString()) + "]: " + isNonDefaultConstructor);

            // All Done.
            return isNonDefaultConstructor;

        } else {
            log.debug("Found non-constructor signature: " + signature);
        }

        // Nopes.
        return false;
    }
Defines a Pointcut for any constructor to a class implementing Validatable.
The Pointcut will return {@code true} for all non-default Constructors, i.e. when the signature
of the JoinPoint has more than 0 arguments.

@param joinPoint The currently executing joinPoint.