post strategy design pattern