While there is only one ENUM value for all the operations represented by this class, it looks like the logic might benefit/be-simplified by splitting it into separate subclasses for SET_FIELD, DELETE_FIELD, SET_IF_EQUALS.  That said, maybe some of that could be resolved in a different way and I'm up to suggestion for alternatives that do better to keep us pretty dry.  If you think its fine how it is its something that will really hurt too much to leave alone.