in internal/plugin/plugin.go [177:195]
func (ph *responsePhase) filter(conf RuleConf, w *inHTTP.Response) error {
for _, c := range conf {
plugin := findPlugin(c.Name)
if plugin == nil {
log.Warnf("can't find plugin %s, skip", c.Name)
continue
}
log.Infof("run plugin %s", c.Name)
plugin.ResponseFilter(c.Value, w)
if w.HasChange() {
// response is generated, no need to continue
break
}
}
return nil
}