public static String setter(TypeName beanClass, String beanName, ModelProperty property) {		
		if (property.getParent()!=null && ((ModelClass<?>) property.getParent()).isImmutablePojo()) {
			return ImmutableUtility.IMMUTABLE_PREFIX + property.getName();
		} else {
			String prefix=""; 
			if (beanName!=null) {
				prefix=beanName+".";
			}
			if (property.isPublicField()) {
				return prefix+property.getName();
			} else if (property.isFieldWithSetter()) {
				return prefix+"set" + converterField2Method.convert(property.getName());
			} else {				
				throw new PropertyVisibilityException(String.format("property '%s' of class '%s' can not be modify",
						property.getName(), property.getParent().getElement().asType()));
			}
		}
	}
public static String setter ( TypeName beanClass , String beanName , ModelProperty property ) { if ( property . getParent ( ) != null && ( ( ModelClass < ? > ) property . getParent ( ) ) . isImmutablePojo ( ) ) { return ImmutableUtility . IMMUTABLE_PREFIX + property . getName ( ) ; } else { String prefix = "" ; if ( beanName != null ) { prefix = beanName + "." ; } if ( property . isPublicField ( ) ) { return prefix + property . getName ( ) ; } else if ( property . isFieldWithSetter ( ) ) { return prefix + "set" + converterField2Method . convert ( property . getName ( ) ) ; } else { throw new PropertyVisibilityException ( String . format ( "property '%s' of class '%s' can not be modify" , property . getName ( ) , property . getParent ( ) . getElement ( ) . asType ( ) ) ) ; } } }
Setter.

@param beanClass
the bean class
@param property
the property
@return the string