FeatureSelector determines if this account will try new features; loaded once during startup.
| 41 | |
| 42 | // FeatureSelector determines if this account will try new features; loaded once during startup. |
| 43 | type featureSelector struct { |
| 44 | accountHash uint32 |
| 45 | logger *zerolog.Logger |
| 46 | resolver resolver |
| 47 | |
| 48 | staticFeatures staticFeatures |
| 49 | cliFeatures []string |
| 50 | |
| 51 | // lock protects concurrent access to dynamic features |
| 52 | lock sync.RWMutex |
| 53 | remoteFeatures featuresRecord |
| 54 | } |
| 55 | |
| 56 | func newFeatureSelector(ctx context.Context, accountTag string, logger *zerolog.Logger, resolver resolver, cliFeatures []string, pq bool, refreshFreq time.Duration) (*featureSelector, error) { |
| 57 | // Combine default features and user-provided features |
nothing calls this directly
no outgoing calls
no test coverage detected