github.com/pf-qiu/concourse/v6@v6.7.3-0.20201207032516-1f455d73275f/atc/api/pipelineserver/get.go (about)

     1  package pipelineserver
     2  
     3  import (
     4  	"encoding/json"
     5  	"net/http"
     6  
     7  	"github.com/pf-qiu/concourse/v6/atc/api/present"
     8  	"github.com/pf-qiu/concourse/v6/atc/db"
     9  )
    10  
    11  func (s *Server) GetPipeline(pipeline db.Pipeline) http.Handler {
    12  	logger := s.logger.Session("get-pipeline")
    13  
    14  	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
    15  		w.Header().Set("Content-Type", "application/json")
    16  
    17  		err := json.NewEncoder(w).Encode(present.Pipeline(pipeline))
    18  		if err != nil {
    19  			logger.Error("failed-to-encode-pipeline", err)
    20  			w.WriteHeader(http.StatusInternalServerError)
    21  		}
    22  	})
    23  }