/// <summary>
 /// Adds a <see cref="IShipment"/> to the extended data collection
 /// </summary>
 /// <param name="extendedData"></param>
 /// <param name="shipment"></param>
 public static void AddShipment(this ExtendedDataCollection extendedData, IShipment shipment)
 {
     extendedData.AddAddress(shipment.GetOriginAddress(), Constants.ExtendedDataKeys.ShippingOriginAddress);
     extendedData.AddAddress(shipment.GetDestinationAddress(), Constants.ExtendedDataKeys.ShippingDestinationAddress);
     extendedData.SetValue(Constants.ExtendedDataKeys.ShipMethodKey, shipment.ShipMethodKey.ToString());
     extendedData.AddLineItemCollection(shipment.Items);
 }
 /// <summary>
 /// Adds an <see cref="IAddress"/> to extended data.  This is intended for shipment addresses
 /// </summary>
 /// <param name="extendedData"></param>
 /// <param name="address"></param>
 /// <param name="addressType">The Origin or Destination addresses</param>
 public static void AddAddress(this ExtendedDataCollection extendedData, IAddress address, AddressType addressType)
 {
     extendedData.AddAddress(address, addressType == AddressType.Shipping
                     ? Constants.ExtendedDataKeys.ShippingDestinationAddress
                     : Constants.ExtendedDataKeys.BillingAddress);
 }