github.com/gofiber/fiber/v2@v2.47.0/internal/storage/memory/config.go (about)

     1  package memory
     2  
     3  import "time"
     4  
     5  // Config defines the config for storage.
     6  type Config struct {
     7  	// Time before deleting expired keys
     8  	//
     9  	// Default is 10 * time.Second
    10  	GCInterval time.Duration
    11  }
    12  
    13  // ConfigDefault is the default config
    14  var ConfigDefault = Config{
    15  	GCInterval: 10 * time.Second,
    16  }
    17  
    18  // configDefault is a helper function to set default values
    19  func configDefault(config ...Config) Config {
    20  	// Return default config if nothing provided
    21  	if len(config) < 1 {
    22  		return ConfigDefault
    23  	}
    24  
    25  	// Override default config
    26  	cfg := config[0]
    27  
    28  	// Set default values
    29  	if int(cfg.GCInterval.Seconds()) <= 0 {
    30  		cfg.GCInterval = ConfigDefault.GCInterval
    31  	}
    32  	return cfg
    33  }