Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import "fmt"
- type Fetcher interface {
- Fetch()
- ReqConverter()
- RespConverter()
- }
- type BaseFetcher struct {
- }
- func (b *BaseFetcher) Fetch() {
- fmt.Println("Base fetch begins")
- b.ReqConverter()
- fmt.Println("Base fetching...")
- b.RespConverter()
- fmt.Println("Base fetched.")
- }
- func (b *BaseFetcher) ReqConverter() {
- fmt.Println("Base Request filter")
- }
- func (b *BaseFetcher) RespConverter() {
- fmt.Println("Base Response filter")
- }
- type AlarmFetcher struct {
- BaseFetcher
- }
- func (a *AlarmFetcher) ReqConverter() {
- fmt.Println("Alarm fetcher request filter")
- }
- func (a *AlarmFetcher) Fetch() {
- fmt.Println("alarm fetch begins")
- a.ReqConverter()
- fmt.Println("alarm fetching...")
- a.RespConverter()
- fmt.Println("alarm fetched.")
- }
- /*
- func main() {
- var af AlarmFetcher
- af.Fetch()
- //af.ReqConverter()
- //af.BaseFetcher.ReqConverter()
- }
- */
Add Comment
Please, Sign In to add comment