generator.New   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 5
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 5
nop 1
dl 0
loc 5
ccs 0
cts 1
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
package generator
2
3
import (
4
	"net/http"
5
6
	"github.com/getkin/kin-openapi/routers"
7
	"github.com/muonsoft/openapi-mock/internal/openapi/generator/content"
8
	"github.com/muonsoft/openapi-mock/internal/openapi/generator/data"
9
	"github.com/muonsoft/openapi-mock/internal/openapi/generator/negotiator"
10
)
11
12
type ResponseGenerator interface {
13
	GenerateResponse(request *http.Request, route *routers.Route) (*Response, error)
14
}
15
16
func New(dataGenerator data.MediaGenerator) ResponseGenerator {
17
	return &coordinatingGenerator{
18
		contentTypeNegotiator: negotiator.NewContentTypeNegotiator(),
19
		statusCodeNegotiator:  negotiator.NewStatusCodeNegotiator(),
20
		contentGenerator:      content.NewGenerator(dataGenerator),
21
	}
22
}
23