22from six import iteritems
33
44from openapi_core .compat import lru_cache
5+ from openapi_core .schema .links .generators import LinksGenerator
56from openapi_core .schema .media_types .generators import MediaTypeGenerator
67from openapi_core .schema .parameters .generators import ParametersGenerator
78from openapi_core .schema .responses .models import Response
@@ -19,6 +20,8 @@ def generate(self, responses):
1920 description = response_deref ['description' ]
2021 headers = response_deref .get ('headers' )
2122 content = response_deref .get ('content' )
23+ links_dict = response_deref .get ('links' , {})
24+ links = self .links_generator .generate (links_dict )
2225
2326 media_types = None
2427 if content :
@@ -30,7 +33,7 @@ def generate(self, responses):
3033
3134 yield http_status , Response (
3235 http_status , description ,
33- content = media_types , headers = parameters )
36+ content = media_types , headers = parameters , links = links )
3437
3538 @property
3639 @lru_cache ()
@@ -41,3 +44,8 @@ def media_types_generator(self):
4144 @lru_cache ()
4245 def parameters_generator (self ):
4346 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