Author: britter Date: Sun Feb 17 13:16:15 2013 New Revision: 1447018 URL: http://svn.apache.org/r1447018 Log: Document exceptions thrown by ClassAccessor - no functional changes
Modified: commons/sandbox/beanutils2/trunk/src/main/java/org/apache/commons/beanutils2/ClassAccessor.java Modified: commons/sandbox/beanutils2/trunk/src/main/java/org/apache/commons/beanutils2/ClassAccessor.java URL: http://svn.apache.org/viewvc/commons/sandbox/beanutils2/trunk/src/main/java/org/apache/commons/beanutils2/ClassAccessor.java?rev=1447018&r1=1447017&r2=1447018&view=diff ============================================================================== --- commons/sandbox/beanutils2/trunk/src/main/java/org/apache/commons/beanutils2/ClassAccessor.java (original) +++ commons/sandbox/beanutils2/trunk/src/main/java/org/apache/commons/beanutils2/ClassAccessor.java Sun Feb 17 13:16:15 2013 @@ -34,6 +34,12 @@ public interface ClassAccessor<B> * * @param<B> the type of the new instance * @return a {@link BeanAccessor} that wraps the new instance. + * @throws BeanInstantiationException if the class wrapped by this {@code ClassAccessor} is not instantiable (for + * example if it is a primitive type). + * @throws NoSuchConstructorException if the class wrapped by this {@code ClassAccessor} does not provide a default + * constructor. + * @throws ConstructorNotAccessibleException if the constructor is not accessible. + * @throws ConstructorInvocationException if the constructor invocation threw an exception. */ BeanAccessor<B> newInstance(); @@ -45,6 +51,11 @@ public interface ClassAccessor<B> * be {@code null}. If you want to pass {@code null} to the constructor use * {@link Argument#nullArgument(Class)}. * @return a {@link BeanAccessor} that wrapped the new instance + * @throws BeanInstantiationException if the class wrapped by this {@code ClassAccessor} is not instantiable (for + * example if it is a primitive type). + * @throws NoSuchConstructorException if no constructor that matches {@code arguments} can be found. + * @throws ConstructorNotAccessibleException if the constructor is not accessible. + * @throws ConstructorInvocationException if the constructor invocation threw an exception. */ BeanAccessor<B> invokeConstructor( Argument<?>... arguments ); @@ -56,6 +67,12 @@ public interface ClassAccessor<B> * be {@code null}. If you want to pass {@code null} to the constructor use * {@link Argument#nullArgument(Class)}. * @return a {@link BeanAccessor} that wrapped the new instance + * @throws BeanInstantiationException if the class wrapped by this {@code ClassAccessor} is not instantiable (for + * example if it is a primitive type). + * @throws NoSuchConstructorException if no constructor that matches {@code arguments} exactly (without type + * conversation) can be found. + * @throws ConstructorNotAccessibleException if the constructor is not accessible. + * @throws ConstructorInvocationException if the constructor invocation threw an exception. */ BeanAccessor<B> invokeExactConstructor( Argument<?>... arguments );