Package org.milyn.scribe.annotation

Examples of org.milyn.scribe.annotation.Insert


   * @param method
   */
  private void analyzeInsertMethod(final AnnotatedMethod aMethod) {
    Method method = aMethod.getMethod();

    Insert annotation = aMethod.getAnnotation(Insert.class);

    String name = annotation.name();
    if(name.length() == 0) {
      name = method.getName();
    }

    assertUniqueName(insertMethods, Insert.class, name);

    if(annotation.isDefault() && defaultInsertMethod != null) {
      throw new IllegalAnnotationUsageException("At least two methods are annotated with the '"+ Insert.class.getName() +"'annotation having the isDefault on true. Only one method per class is allowed to be the default insert method.");
    }
    if(method.getParameterTypes().length == 0) {
      throw new IllegalAnnotationUsageException("The Insert annotated method '"+ method +"' of the DAO class '"+ daoClass.getName() +"'  doesn't have any parameters.");
    }
    if(method.getParameterTypes().length > 1) {
      throw new IllegalAnnotationUsageException("The Insert annotated method '"+ method +"' of the DAO class '"+ daoClass.getName() +"' has more then 1 parameter, which isn't allowed.");
    }

    boolean returnsEntity  = !method.isAnnotationPresent(ReturnsNoEntity.class);

    EntityMethod insertMethod = new EntityMethod(method, returnsEntity);

    if(annotation.isDefault()) {
      defaultInsertMethod = insertMethod;
    }
    insertMethods.put(name, insertMethod);
  }
View Full Code Here

TOP

Related Classes of org.milyn.scribe.annotation.Insert

Copyright © 2018 www.massapicom. 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.