diff --git a/go-apps/meep-app-enablement/server/capif-mgmt/model_service_api_description_patch.go b/go-apps/meep-app-enablement/server/capif-mgmt/model_service_api_description_patch.go index cf0cf27f0cac981c0e641ec6b3d3803c4591c65b..246fc014683c0aa9cdd938c213100fec2f505c47 100644 --- a/go-apps/meep-app-enablement/server/capif-mgmt/model_service_api_description_patch.go +++ b/go-apps/meep-app-enablement/server/capif-mgmt/model_service_api_description_patch.go @@ -10,5 +10,6 @@ package server type ServiceApiDescriptionPatch struct { + AefProfiles []AefProfile `json:"aefProfiles,omitempty"` VendorSpecificUrnetsimeccapifextserviceInfo *MecServiceInfoCapifExtPatch `json:"vendorSpecific-urn:etsi:mec:capifext:service-info,omitempty"` } diff --git a/go-apps/meep-app-enablement/server/capif-mgmt/service-mgmt.go b/go-apps/meep-app-enablement/server/capif-mgmt/service-mgmt.go index 41ce53db802a998de5a3400f902ce7d49e705f6f..5dee082c4f5ec588b0a8b44827efc863a7e5ecd7 100644 --- a/go-apps/meep-app-enablement/server/capif-mgmt/service-mgmt.go +++ b/go-apps/meep-app-enablement/server/capif-mgmt/service-mgmt.go @@ -638,8 +638,20 @@ func appServicesByIdPATCH(w http.ResponseWriter, r *http.Request) { errHandlerProblemDetails(w, err.Error(), http.StatusInternalServerError) return } - + aefProfile := &AefProfile{ + AefId: sInfo.AefProfiles[0].AefId, + Versions: sInfo.AefProfiles[0].Versions, + InterfaceDescriptions: sInfo.AefProfiles[0].InterfaceDescriptions, + VendorSpecificUrnetsimeccapifexttransportInfo: &MecTransportInfoCapifExt{ + Name: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Name, + Type_: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Type_, + Protocol: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Protocol, + Version: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Version, + Security: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Security, + }, + } dsInfo := &ServiceApiDescriptionPatch{ + AefProfiles: []AefProfile{*aefProfile}, VendorSpecificUrnetsimeccapifextserviceInfo: &MecServiceInfoCapifExtPatch{ Serializer: sInfo.VendorSpecificUrnetsimeccapifextserviceInfo.Serializer, State: sInfo.VendorSpecificUrnetsimeccapifextserviceInfo.State, @@ -649,7 +661,15 @@ func appServicesByIdPATCH(w http.ResponseWriter, r *http.Request) { Category: sInfo.VendorSpecificUrnetsimeccapifextserviceInfo.Category, }, } - + transportInfo_ := TransportInfo{ + Id: sInfo.AefProfiles[0].AefId, + Name: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Name, + Type_: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Type_, + Protocol: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Protocol, + Version: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Version, + Endpoint: sInfo.AefProfiles[0].InterfaceDescriptions, + Security: sInfo.AefProfiles[0].VendorSpecificUrnetsimeccapifexttransportInfo.Security, + } // Create Service _sInfo := ServiceInfo{ SerInstanceId: sInfoPrev.SerInstanceId, @@ -657,7 +677,7 @@ func appServicesByIdPATCH(w http.ResponseWriter, r *http.Request) { Version: sInfoPrev.Version, SerCategory: dsInfo.VendorSpecificUrnetsimeccapifextserviceInfo.Category, State: dsInfo.VendorSpecificUrnetsimeccapifextserviceInfo.State, - TransportInfo: sInfoPrev.TransportInfo, + TransportInfo: &transportInfo_, Serializer: dsInfo.VendorSpecificUrnetsimeccapifextserviceInfo.Serializer, ScopeOfLocality: dsInfo.VendorSpecificUrnetsimeccapifextserviceInfo.ScopeOfLocality, ConsumedLocalOnly: dsInfo.VendorSpecificUrnetsimeccapifextserviceInfo.ConsumedLocalOnly, @@ -724,7 +744,7 @@ func appServicesByIdPATCH(w http.ResponseWriter, r *http.Request) { service := _sInfo // Create an AefProfile from TransportInfo inside ServiceInfo - aefProfile := AefProfile{ + aefProfile_ := AefProfile{ AefId: service.TransportInfo.Id, Versions: []string{service.Version}, // Assuming Version is a string InterfaceDescriptions: service.TransportInfo.Endpoint, @@ -741,7 +761,7 @@ func appServicesByIdPATCH(w http.ResponseWriter, r *http.Request) { apiDesc := ServiceApiDescription{ ApiName: service.SerName, // Map SerName to ApiName ApiId: service.SerInstanceId, // Map SerInstanceId to ApiId - AefProfiles: []AefProfile{aefProfile}, + AefProfiles: []AefProfile{aefProfile_}, VendorSpecificUrnetsimeccapifextserviceInfo: &MecServiceInfoCapifExt{ Serializer: service.Serializer, State: service.State,