/// <summary> /// Returns an instance of ImmutableCredentials for this instance /// </summary> /// <returns></returns> public override ImmutableCredentials GetCredentials() { lock (this._refreshLock) { // If credentials are expired, update if (ShouldUpdate) { if (_currentState != null) { _currentState.Dispose(); } _currentState = GenerateNewCredentials(); // Check if the new credentials are already expired if (ShouldUpdate) { throw new AmazonClientException("The retrieved credentials have already expired"); } // Offset the Expiration by PreemptExpiryTime _currentState.Expiration -= PreemptExpiryTime; if (ShouldUpdate) { // This should happen if the default value of PreemptExpiryTime is // overriden and set too high such that ShouldUpdate returns true. _logger.InfoFormat("The preempt expiry time is set too high: {0}.", PreemptExpiryTime); } } return(_currentState.Credentials.Copy()); } }
/// <summary> /// Returns an instance of ImmutableCredentials for this instance /// </summary> /// <returns></returns> public override ImmutableCredentials GetCredentials() { lock (this._refreshLock) { // If credentials are expired, update if (ShouldUpdate) { if (_currentState != null) { _currentState.Dispose(); } _currentState = GenerateNewCredentials(); } return(_currentState.Credentials.Copy()); } }
/// <summary> /// Returns an instance of ImmutableCredentials for this instance /// </summary> /// <returns></returns> public override ImmutableCredentials GetCredentials() { lock (this._refreshLock) { // If credentials are expired, update if (ShouldUpdate) { if (_currentState != null) { _currentState.Dispose(); } _currentState = GenerateNewCredentials(); // Check if the new credentials are already expired if (ShouldUpdate) { throw new AmazonClientException("The retrieved credentials have already expired"); } } return(_currentState.Credentials.Copy()); } }