public void serializeAsField(Object bean,JsonGenerator jgen,SerializerProvider prov) throws Exception {
  Object value=get(bean);
  if (value == null) {
    if (!_suppressNulls) {
      jgen.writeFieldName(_name);
      prov.defaultSerializeNull(jgen);
    }
    return;
  }
  if (value == bean) {
    _reportSelfReference(bean);
  }
  if (_suppressableValue != null && _suppressableValue.equals(value)) {
    return;
  }
  JsonSerializer<Object> ser=_serializer;
  if (ser == null) {
    Class<?> cls=value.getClass();
    PropertySerializerMap map=_dynamicSerializers;
    ser=map.serializerFor(cls);
    if (ser == null) {
      ser=_findAndAddDynamic(map,cls,prov);
    }
  }
  jgen.writeFieldName(_name);
  if (_typeSerializer == null) {
    ser.serialize(value,jgen,prov);
  }
 else {
    ser.serializeWithType(value,jgen,prov,_typeSerializer);
  }
}

public void serializeAsField ( Object bean , JsonGenerator jgen , SerializerProvider prov ) throws Exception { Object value = get ( bean ) ; if ( value == null ) { if ( ! _suppressNulls ) { jgen . writeFieldName ( _name ) ; prov . defaultSerializeNull ( jgen ) ; } return ; } if ( value == bean ) { _reportSelfReference ( bean ) ; } if ( _suppressableValue != null && _suppressableValue . equals ( value ) ) { return ; } JsonSerializer < Object > ser = _serializer ; if ( ser == null ) { Class < ? > cls = value . getClass ( ) ; PropertySerializerMap map = _dynamicSerializers ; ser = map . serializerFor ( cls ) ; if ( ser == null ) { ser = _findAndAddDynamic ( map , cls , prov ) ; } } jgen . writeFieldName ( _name ) ; if ( _typeSerializer == null ) { ser . serialize ( value , jgen , prov ) ; } else { ser . serializeWithType ( value , jgen , prov , _typeSerializer ) ; } }
method called to access property that this bean stands for , from within given bean , and to serialize it as a json object field using appropriate serializer .
