github.com/pf-qiu/concourse/v6@v6.7.3-0.20201207032516-1f455d73275f/web/handler.go (about)

     1  package web
     2  
     3  import (
     4  	"net/http"
     5  
     6  	"code.cloudfoundry.org/lager"
     7  	"github.com/pf-qiu/concourse/v6/web/indexhandler"
     8  	"github.com/pf-qiu/concourse/v6/web/publichandler"
     9  	"github.com/pf-qiu/concourse/v6/web/robotshandler"
    10  )
    11  
    12  func NewHandler(logger lager.Logger) (http.Handler, error) {
    13  	indexHandler, err := indexhandler.NewHandler(logger)
    14  	if err != nil {
    15  		return nil, err
    16  	}
    17  
    18  	publicHandler, err := publichandler.NewHandler()
    19  	if err != nil {
    20  		return nil, err
    21  	}
    22  
    23  	robotsHandler := robotshandler.NewHandler()
    24  
    25  	webMux := http.NewServeMux()
    26  	webMux.Handle("/public/", publicHandler)
    27  	webMux.Handle("/robots.txt", robotsHandler)
    28  	webMux.Handle("/", indexHandler)
    29  	return webMux, nil
    30  }