facet refactoring, default collector base post implementation
automatically implement post based on collector