in src/Microsoft.Azure.NotificationHubs/Auth/SharedAccessSignatureTokenProvider.cs [42:72]
internal SharedAccessSignatureTokenProvider(string keyName, string sharedAccessKey, TimeSpan tokenTimeToLive)
: base(tokenTimeToLive - DefaultTokenRefreshTimeMargin)
{
if (string.IsNullOrEmpty(keyName))
{
throw new ArgumentNullException("keyName");
}
if (keyName.Length > MaxKeyNameLength)
{
throw new ArgumentOutOfRangeException(
"keyName",
SRCore.ArgumentStringTooBig("keyName", MaxKeyNameLength));
}
if (string.IsNullOrEmpty(sharedAccessKey))
{
throw new ArgumentNullException("sharedAccessKey");
}
if (sharedAccessKey.Length > MaxKeyLength)
{
throw new ArgumentOutOfRangeException(
"sharedAccessKey",
SRCore.ArgumentStringTooBig("sharedAccessKey", MaxKeyLength));
}
this._encodedSharedAccessKey = Encoding.UTF8.GetBytes(sharedAccessKey);
this._keyName = keyName;
this._tokenTimeToLive = tokenTimeToLive;
}