public EventHubsSystemDescriptor withPartitioningMethod(PartitioningMethod partitioningMethod) {
    this.producerEventhubsPartitioningMethod = Optional.ofNullable(partitioningMethod);
    return this;
  }
Configure the method that the message is partitioned for the downstream Event Hubs in one of the following ways:
<ul>
  <li>ROUND_ROBIN:
  The message key and partition key are ignored and the message
  will be distributed in a round-robin fashion amongst all the partitions in the downstream Event Hubs entity.</li>
  <li>EVENT_HUB_HASHING:
  Employs the hashing mechanism in Event Hubs to determine, based on the key of the message,
  which partition the message should go. Using this method still ensures that all the events with
  the same key are sent to the same partition in the event hub. If this option is chosen, the partition
  key used for the hash should be a string. If the partition key is not set, the message key is
  used instead.</li>
  <li>PARTITION_KEY_AS_PARTITION:
  Use the integer key specified by the partition key or key of the message to a specific partition
  on Event Hubs. If the integer key is greater than the number of partitions in the destination Event Hubs entity,
  a modulo operation will be performed to determine the resulting paritition.
  ie. if there are 6 partitions and the key is 9, the message will end up in partition 3.
  Similarly to EVENT_HUB_HASHING, if the partition key is not set the message key is used instead.</li>
</ul>
@param partitioningMethod the desired partitioning method for the message in the downstream Event Hubs entity
@return this system descriptor
samza-azure/src/main/java/org/apache/samza/system/eventhub/descriptors/EventHubsSystemDescriptor.java