| 123456789101112131415161718192021222324252627282930 |
- package shared
- import (
- "encoding/json"
- "net/http"
- "github.com/porter-dev/porter/api/server/shared/apierrors"
- )
- type ResultWriter interface {
- WriteResult(w http.ResponseWriter, v interface{})
- }
- // default generalizes response codes for common operations
- // (http.StatusOK, http.StatusCreated, etc)
- type DefaultResultWriter struct {
- config *Config
- }
- func NewDefaultResultWriter(config *Config) ResultWriter {
- return &DefaultResultWriter{config}
- }
- func (j *DefaultResultWriter) WriteResult(w http.ResponseWriter, v interface{}) {
- err := json.NewEncoder(w).Encode(v)
- if err != nil {
- apierrors.HandleAPIError(w, j.config.Logger, apierrors.NewErrInternal(err))
- }
- }
|