2
2
from six import iteritems
3
3
4
4
from openapi_core .compat import lru_cache
5
+ from openapi_core .schema .links .generators import LinksGenerator
5
6
from openapi_core .schema .media_types .generators import MediaTypeGenerator
6
7
from openapi_core .schema .parameters .generators import ParametersGenerator
7
8
from openapi_core .schema .responses .models import Response
@@ -19,6 +20,8 @@ def generate(self, responses):
19
20
description = response_deref ['description' ]
20
21
headers = response_deref .get ('headers' )
21
22
content = response_deref .get ('content' )
23
+ links_dict = response_deref .get ('links' , {})
24
+ links = self .links_generator .generate (links_dict )
22
25
23
26
media_types = None
24
27
if content :
@@ -30,7 +33,7 @@ def generate(self, responses):
30
33
31
34
yield http_status , Response (
32
35
http_status , description ,
33
- content = media_types , headers = parameters )
36
+ content = media_types , headers = parameters , links = links )
34
37
35
38
@property
36
39
@lru_cache ()
@@ -41,3 +44,8 @@ def media_types_generator(self):
41
44
@lru_cache ()
42
45
def parameters_generator (self ):
43
46
return ParametersGenerator (self .dereferencer , self .schemas_registry )
47
+
48
+ @property
49
+ @lru_cache ()
50
+ def links_generator (self ):
51
+ return LinksGenerator (self .dereferencer , self .schemas_registry )
0 commit comments