refactoring : introduce PipeWrapperCallbacksSupport to remove duplicated code