NONRTRIC-946: Make GET for GetApfIdServiceApis stateless
[nonrtric/plt/sme.git] / capifcore / internal / securityapi / typeupdate.go
index 364c123..3adb836 100644 (file)
@@ -31,7 +31,6 @@ var securityMethods []publishserviceapi.SecurityMethod
 func (newContext *ServiceSecurity) PrepareNewSecurityContext(services []publishserviceapi.ServiceAPIDescription) error {
        securityMethods = []publishserviceapi.SecurityMethod{}
        for i, securityInfo := range newContext.SecurityInfo {
-
                if securityInfo.InterfaceDetails != nil {
                        addSecurityMethodsFromInterfaceDetails(securityInfo.InterfaceDetails.SecurityMethods, &securityInfo.PrefSecurityMethods)
 
@@ -39,9 +38,11 @@ func (newContext *ServiceSecurity) PrepareNewSecurityContext(services []publishs
                        checkNil := securityInfo.ApiId != nil && securityInfo.AefId != nil
                        if checkNil {
                                service := getServiceByApiId(&services, securityInfo.ApiId)
-                               afpProfile := service.GetAefProfileById(securityInfo.AefId)
+                               if service != nil {
+                                       afpProfile := service.GetAefProfileById(securityInfo.AefId)
+                                       addSecurityMethodsFromAefProfile(afpProfile)
+                               }
 
-                               addSecurityMethodsFromAefProfile(afpProfile)
                        }
                }
 
@@ -58,7 +59,6 @@ func isSecuryMethodsEmpty() bool {
 }
 
 func addSecurityMethodsFromInterfaceDetails(methodsFromInterface *[]publishserviceapi.SecurityMethod, prefMethods *[]publishserviceapi.SecurityMethod) {
-
        if methodsFromInterface != nil {
                securityMethods = append(securityMethods, *methodsFromInterface...)
        }
@@ -67,9 +67,9 @@ func addSecurityMethodsFromInterfaceDetails(methodsFromInterface *[]publishservi
        }
 }
 
-func addSecurityMethodsFromAefProfile(afpProfile *publishserviceapi.AefProfile) {
-       if afpProfile.SecurityMethods != nil {
-               securityMethods = append(securityMethods, *afpProfile.SecurityMethods...)
+func addSecurityMethodsFromAefProfile(aefProfile *publishserviceapi.AefProfile) {
+       if aefProfile.SecurityMethods != nil {
+               securityMethods = append(securityMethods, *aefProfile.SecurityMethods...)
        }
 }