updated patch that addresses a few of my previous comments...
- would be good to have a test of fieldNameMatchesSchemaField in an excludes
- i don't think your ignore-not-in-schema-and-foo-name-prefix is verifying that the foo prefix is required?
- even with your added comments, the logic involving fieldNameMatchesSchemaField in shouldMutate seems kind of hairy (too hairy for me to be confident it's correct by reading it w/o looking at the test) .. i'm wondering if it can't be "unwound" a bit to make it more straight forward?
...lemme know what you think of the new logic in ConfigurableFieldNameSelector.shouldMutate .. i think it's easier to read, but i'm curious if that's just how my mind works
I retract this suggestion...
you should change getDefaultSelector in IgnoreFieldUpdateProcessorFactory to take advantage of your new logic (ie: call createFieldNameSelector(...))
..no reason to make that method reuse createFieldNameSelector with anartificials set of params just to get a selector that would be slower then what it uses right now.