utility_legacy.go raw

   1  //go:build !go1.13
   2  // +build !go1.13
   3  
   4  // Copyright 2017 Microsoft Corporation
   5  //
   6  //  Licensed under the Apache License, Version 2.0 (the "License");
   7  //  you may not use this file except in compliance with the License.
   8  //  You may obtain a copy of the License at
   9  //
  10  //      http://www.apache.org/licenses/LICENSE-2.0
  11  //
  12  //  Unless required by applicable law or agreed to in writing, software
  13  //  distributed under the License is distributed on an "AS IS" BASIS,
  14  //  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15  //  See the License for the specific language governing permissions and
  16  //  limitations under the License.
  17  
  18  package autorest
  19  
  20  import "github.com/Azure/go-autorest/autorest/adal"
  21  
  22  // IsTokenRefreshError returns true if the specified error implements the TokenRefreshError
  23  // interface.  If err is a DetailedError it will walk the chain of Original errors.
  24  func IsTokenRefreshError(err error) bool {
  25  	if _, ok := err.(adal.TokenRefreshError); ok {
  26  		return true
  27  	}
  28  	if de, ok := err.(DetailedError); ok {
  29  		return IsTokenRefreshError(de.Original)
  30  	}
  31  	return false
  32  }
  33