func New() (Logic, error) { pageLoader, err := wiki.GetBoltPageLoader() if err != nil { return nil, err } pathFinder := bfs.GetBfsPathFinder(pageLoader) return &logicImpl{pageLoader, pathFinder}, nil }
func getPageLoader(source string) wiki.PageLoader { switch source { case "bolt": pageLoader, err := wiki.GetBoltPageLoader() if err != nil { log.Fatal(err) } return pageLoader case "web": return wiki.GetWebPageLoader() default: log.Fatal("Unknown source:", source) return nil } }