Showing 8 of 20 total issues
Method Handler.UnmarshalCaddyfile
has a Cognitive Complexity of 94 (exceeds 20 allowed). Consider refactoring. Open
Open
func (h *Handler) UnmarshalCaddyfile(d *caddyfile.Dispenser) error { config := getDefaultConfig() for d.Next() {
- Read upRead up
Method Handler.UnmarshalCaddyfile
has 23 return statements (exceeds 4 allowed). Open
Open
func (h *Handler) UnmarshalCaddyfile(d *caddyfile.Dispenser) error { config := getDefaultConfig() for d.Next() {
Method Handler.ServeHTTP
has a Cognitive Complexity of 31 (exceeds 20 allowed). Consider refactoring. Open
Open
func (h *Handler) ServeHTTP(w http.ResponseWriter, r *http.Request, next caddyhttp.Handler) error { // add a log here to record the elapsed time (from receiving the request to send the response) start := time.Now() upstreamDuration := time.Duration(0)
- Read upRead up
Method Handler.UnmarshalCaddyfile
has 126 lines of code (exceeds 100 allowed). Consider refactoring. Open
Open
func (h *Handler) UnmarshalCaddyfile(d *caddyfile.Dispenser) error { config := getDefaultConfig() for d.Next() {
Method Handler.ServeHTTP
has 14 return statements (exceeds 4 allowed). Open
Open
func (h *Handler) ServeHTTP(w http.ResponseWriter, r *http.Request, next caddyhttp.Handler) error { // add a log here to record the elapsed time (from receiving the request to send the response) start := time.Now() upstreamDuration := time.Duration(0)
Function getCacheStatus
has 7 return statements (exceeds 4 allowed). Open
Open
func getCacheStatus(req *http.Request, response *Response, config *Config) (bool, time.Time) { // NOTE: it seems that we can remove lock timeout if response.Code == http.StatusPartialContent || response.snapHeader.Get("Content-Range") != "" { return false, now().Add(config.LockTimeout) }
Function judgeResponseShouldCacheOrNot
has 7 return statements (exceeds 4 allowed). Open
Open
func judgeResponseShouldCacheOrNot(req *http.Request, statusCode int, respHeaders http.Header, privateCache bool) ([]cacheobject.Reason, time.Time, []cacheobject.Warning, *cacheobject.Object, error) {
Method Storage.Delete
has 5 return statements (exceeds 4 allowed). Open
Open
func (s *Storage) Delete(ctx context.Context, key string) error { kv, _, err := s.KV.Get(s.generateKey(key), &api.QueryOptions{RequireConsistent: true}) if err != nil { return fmt.Errorf("unable to get data: %s, key: %s", err.Error(), s.generateKey(key)) }