Perhaps it is an idea to add a singleton instance field to the StringPartitionStrategy so you don't need to create a lot of additional objects.

 protected static final PartitionStrategy PARTITION_STRATEGY = StringPartitionStrategy.INSTANCE;