Remove the partitioner member variable; instead, thread that needle everywhere it needs to go.