code.dwrz.net

Go monorepo.
Log | Files | Refs

defaultsmode.go (3750B)


      1 // Code generated by github.com/aws/aws-sdk-go-v2/internal/codegen/cmd/defaultsmode. DO NOT EDIT.
      2 
      3 package aws
      4 
      5 import (
      6 	"strings"
      7 )
      8 
      9 // DefaultsMode is the SDK defaults mode setting.
     10 type DefaultsMode string
     11 
     12 // The DefaultsMode constants.
     13 const (
     14 	// DefaultsModeAuto is an experimental mode that builds on the standard mode.
     15 	// The SDK will attempt to discover the execution environment to determine the
     16 	// appropriate settings automatically.
     17 	//
     18 	// Note that the auto detection is heuristics-based and does not guarantee 100%
     19 	// accuracy. STANDARD mode will be used if the execution environment cannot
     20 	// be determined. The auto detection might query EC2 Instance Metadata service
     21 	// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html),
     22 	// which might introduce latency. Therefore we recommend choosing an explicit
     23 	// defaults_mode instead if startup latency is critical to your application
     24 	DefaultsModeAuto DefaultsMode = "auto"
     25 
     26 	// DefaultsModeCrossRegion builds on the standard mode and includes optimization
     27 	// tailored for applications which call AWS services in a different region
     28 	//
     29 	// Note that the default values vended from this mode might change as best practices
     30 	// may evolve. As a result, it is encouraged to perform tests when upgrading
     31 	// the SDK
     32 	DefaultsModeCrossRegion DefaultsMode = "cross-region"
     33 
     34 	// DefaultsModeInRegion builds on the standard mode and includes optimization
     35 	// tailored for applications which call AWS services from within the same AWS
     36 	// region
     37 	//
     38 	// Note that the default values vended from this mode might change as best practices
     39 	// may evolve. As a result, it is encouraged to perform tests when upgrading
     40 	// the SDK
     41 	DefaultsModeInRegion DefaultsMode = "in-region"
     42 
     43 	// DefaultsModeLegacy provides default settings that vary per SDK and were used
     44 	// prior to establishment of defaults_mode
     45 	DefaultsModeLegacy DefaultsMode = "legacy"
     46 
     47 	// DefaultsModeMobile builds on the standard mode and includes optimization
     48 	// tailored for mobile applications
     49 	//
     50 	// Note that the default values vended from this mode might change as best practices
     51 	// may evolve. As a result, it is encouraged to perform tests when upgrading
     52 	// the SDK
     53 	DefaultsModeMobile DefaultsMode = "mobile"
     54 
     55 	// DefaultsModeStandard provides the latest recommended default values that
     56 	// should be safe to run in most scenarios
     57 	//
     58 	// Note that the default values vended from this mode might change as best practices
     59 	// may evolve. As a result, it is encouraged to perform tests when upgrading
     60 	// the SDK
     61 	DefaultsModeStandard DefaultsMode = "standard"
     62 )
     63 
     64 // SetFromString sets the DefaultsMode value to one of the pre-defined constants that matches
     65 // the provided string when compared using EqualFold. If the value does not match a known
     66 // constant it will be set to as-is and the function will return false. As a special case, if the
     67 // provided value is a zero-length string, the mode will be set to LegacyDefaultsMode.
     68 func (d *DefaultsMode) SetFromString(v string) (ok bool) {
     69 	switch {
     70 	case strings.EqualFold(v, string(DefaultsModeAuto)):
     71 		*d = DefaultsModeAuto
     72 		ok = true
     73 	case strings.EqualFold(v, string(DefaultsModeCrossRegion)):
     74 		*d = DefaultsModeCrossRegion
     75 		ok = true
     76 	case strings.EqualFold(v, string(DefaultsModeInRegion)):
     77 		*d = DefaultsModeInRegion
     78 		ok = true
     79 	case strings.EqualFold(v, string(DefaultsModeLegacy)):
     80 		*d = DefaultsModeLegacy
     81 		ok = true
     82 	case strings.EqualFold(v, string(DefaultsModeMobile)):
     83 		*d = DefaultsModeMobile
     84 		ok = true
     85 	case strings.EqualFold(v, string(DefaultsModeStandard)):
     86 		*d = DefaultsModeStandard
     87 		ok = true
     88 	case len(v) == 0:
     89 		*d = DefaultsModeLegacy
     90 		ok = true
     91 	default:
     92 		*d = DefaultsMode(v)
     93 	}
     94 	return ok
     95 }