Exemplo n.º 1
0
// FilterModule installs a featureBreaker module filter in the context.
func FilterModule(c context.Context, defaultError error) (context.Context, FeatureBreaker) {
	state := newState(defaultError)
	return module.AddFilters(c, func(ic context.Context, i module.Interface) module.Interface {
		return &modState{state, i}
	}), state
}
Exemplo n.º 2
0
// FilterModule installs a counter Module filter in the context.
func FilterModule(c context.Context) (context.Context, *ModuleCounter) {
	state := &ModuleCounter{}
	return module.AddFilters(c, func(ic context.Context, mod module.Interface) module.Interface {
		return &modCounter{state, mod}
	}), state
}