- Azure Table QoS 2 persistence provider uses proper query API to retrieve only relevant row.
- QoS 2 persistence provider API is modified to work with SequenceNumber instead of MessageId.
- Azure Blob session state persistence provider is modified to update ETag value on in-memory session state object to allow saving it later on without any issue.
- 14 least significant bits are used when converting SequenceNumber into PacketId.
IMessage.SequenceNumbertype is changed to ulong.
IQos2StatePersistenceProvidernow accepts device identity to scope messages in flight to device level.IAuthenticationProviderhas been renamed intoIDeviceIdentityProviderand the API has changed to allow for a flexible interaction between device identity source and other protocol gateway components.ITopicNameRouterhas been renamed intoIMessageRouterand the API generalized to work with the message as a whole.IDeviceClienthas been renamed intoIMessagingServiceClientto better reflect the purpose of the component.IMessagingFactorywas introduced and message exchange withIMessagingServiceClientis done usingIMessageobjects.- Issues #23, #26, #27, #28, #33 have been addressed.
- Microsoft Azure IoT SDK specific components have been moved to
ProtocolGateway.IotHubClientproject. - Components are now released as 3 nuget packages according to certain dependencies (Azure Storage, Azure IoT SDK):
Microsoft.Azure.Devices.ProtocolGateway.Core,Microsoft.Azure.Devices.ProtocolGateway.IotHubClient,Microsoft.Azure.Devices.ProtocolGateway.Providers.CloudStorage.- Renamed
samplesintohostthroughout the solution.