+func (ps *PublishService) GetAllowedPublishedServices(apiListRequestedServices []publishapi.ServiceAPIDescription) []publishapi.ServiceAPIDescription {
+ apiListAllPublished := ps.GetAllPublishedServices()
+ allowedPublishedServices := join(apiListAllPublished, apiListRequestedServices)
+ return allowedPublishedServices
+}
+
+func join(a, b []publishapi.ServiceAPIDescription) []publishapi.ServiceAPIDescription {
+ var result []publishapi.ServiceAPIDescription
+
+ if (a == nil) || (b == nil) || (len(a) == 0) || (len(b) == 0) {
+ return result
+ }
+
+ for _, itemA := range a {
+ for _, itemB := range b {
+ if itemA.ApiName == itemB.ApiName {
+ result = append(result, itemA)
+ break
+ }
+ }
+ }
+ return result
+}
+