/// <summary> /// Retrieve services from api defined in the api domain. /// </summary> /// <param name="apis">A list of api.</param> /// <param name="layoutActions">A list of layout actions</param> public List <string> getApiDomainServices(ApiList apis, LayoutInfo layout) { List <string> result = new List <string>(); if (layout != null && layout.Actions.AsEnumerable() != null) { foreach (ActionInfo action in layout.Actions.AsEnumerable()) { if (action.Type != null && action.Api != null && IsDataAction(action.Type)) { char delimiter = '.'; string[] actionSplitted = action.Api.Split(delimiter); string apiService = actionSplitted[0]; foreach (ApiInfo api in apis.AsEnumerable()) { if (api.Id.ToLower().Equals(apiService.ToLower()) && !result.AsEnumerable().Contains(TextConverter.PascalCase(apiService))) { result.Add(TextConverter.PascalCase(apiService)); } } } } } return(result); }
/// <summary> /// Retrieve viewModels from api actions. /// </summary> /// <param name="apis">A list of api.</param> /// <param name="layoutActions">A list of layout actions.</param> /// <returns></returns> public void getApiViewModels(ApiList apis, ActionList layoutActions) { if (layoutActions.AsEnumerable() != null) { foreach (ActionInfo action in layoutActions.AsEnumerable()) { if (action.Type != null && action.Api != null && IsDataAction(action.Type)) { char delimiter = '.'; string[] actionSplitted = action.Api.Split(delimiter); string apiAction = actionSplitted[1]; foreach (ApiInfo api in apis.AsEnumerable()) { if (api.Actions.AsEnumerable() != null) { getApiActionViewModels(apiAction, api.Actions); } } } } } }