* The keys of the distribution are additionally transformed into integer values by hashing (and modulo calculation with the number of endpoints)
* @param distribution the distribution strategy
* @return an instance of Storage_DE_DistributionStrategy
*/
public static<K> Storage_DE_DistributionStrategy createInstance(final IDistributionKeyContainer<K> distribution, final BindingsFactory bindingsFactory){
final EndpointManagement endpointManagement = new EndpointManagement();
final IDistributionKeyContainer<Integer> outer_distribution = new HashingDistributionPipe<K>(distribution, endpointManagement.numberOfEndpoints());
return new Storage_DE_DistributionStrategy(endpointManagement, outer_distribution, bindingsFactory);
}