static synchronized Mutator mutatorFor(Class<?> type, String name, InheritingConfiguration configuration) {
    PropertyInfoKey key = new PropertyInfoKey(type, name, configuration);
    if (!MUTATOR_CACHE.containsKey(key) || !FIELD_CACHE.containsKey(key)) {
      @SuppressWarnings("unchecked")
      Class<Object> uncheckedType = (Class<Object>) type;
      for (Entry<String, Mutator> entry : TypeInfoRegistry.typeInfoFor(uncheckedType, configuration).getMutators().entrySet()) {
        if (entry.getValue().getMember() instanceof Method)
          mutatorFor(type, (Method) entry.getValue().getMember(), configuration, entry.getKey());
        else if (entry.getValue().getMember() instanceof Field)
          fieldPropertyFor(type, (Field) entry.getValue().getMember(), configuration, entry.getKey());
      }
    }

    if (MUTATOR_CACHE.containsKey(key))
      return MUTATOR_CACHE.get(key);
    return FIELD_CACHE.get(key);
  }
static synchronized Mutator mutatorFor ( Class < ? > type , String name , InheritingConfiguration configuration ) { PropertyInfoKey key = new PropertyInfoKey ( type , name , configuration ) ; if ( ! MUTATOR_CACHE . containsKey ( key ) || ! FIELD_CACHE . containsKey ( key ) ) { @ SuppressWarnings ( "unchecked" ) Class < Object > uncheckedType = ( Class < Object > ) type ; for ( Entry < String , Mutator > entry : TypeInfoRegistry . typeInfoFor ( uncheckedType , configuration ) . getMutators ( ) . entrySet ( ) ) { if ( entry . getValue ( ) . getMember ( ) instanceof Method ) mutatorFor ( type , ( Method ) entry . getValue ( ) . getMember ( ) , configuration , entry . getKey ( ) ) ; else if ( entry . getValue ( ) . getMember ( ) instanceof Field ) fieldPropertyFor ( type , ( Field ) entry . getValue ( ) . getMember ( ) , configuration , entry . getKey ( ) ) ; } } if ( MUTATOR_CACHE . containsKey ( key ) ) return MUTATOR_CACHE . get ( key ) ; return FIELD_CACHE . get ( key ) ; }
Returns an mutator for the {@code accessorName}, else {@code null} if none exists.
Returns a Mutator instance for the given mutator method. The method must be externally
validated to ensure that it accepts one argument and returns void.class.