public Property build(final PropertyResolver propertyResolver){
  validate(propertyResolver);
  if (propertyType == null && propertyTypeName != null) {
    propertyType=TypeFactory.valueOf(propertyTypeName);
  }
 else   if (propertyType == null) {
    propertyType=TypeFactory.TYPE_OF_OBJECT;
  }
  if (getterMethod != null) {
    getter=getterMethod.getName() + "()";
  }
  if (setterMethod != null) {
    setter=setterMethod.getName() + "(%s)";
  }
  return new Property(name,getter,setter,propertyType,elementType);
}

public Property build ( final PropertyResolver propertyResolver ) { validate ( propertyResolver ) ; if ( propertyType == null && propertyTypeName != null ) { propertyType = TypeFactory . valueOf ( propertyTypeName ) ; } else if ( propertyType == null ) { propertyType = TypeFactory . TYPE_OF_OBJECT ; } if ( getterMethod != null ) { getter = getterMethod . getName ( ) + "()" ; } if ( setterMethod != null ) { setter = setterMethod . getName ( ) + "(%s)" ; } return new Property ( name , getter , setter , propertyType , elementType ) ; }
builds the property , using the specified proeprtyresolver to validate the property settings
