Exemple #1
0
        private ResourceTemplate GetCommandActionTemplate(IDictionary <ResourceTemplateType, ResourceTemplate> templates, ControllerActionGroup action, ResourceTemplateType type)
        {
            var template = templates[type];

            template.ResetParameters();

            var routePlaceholder = GetCommandRoutePlaceholder(action.Node, action.DomainPlural, action.DomainSingular);

            template.SetParameter(TemplateParameterType.RoutePlaceholder, routePlaceholder);
            template.SetParameter(TemplateParameterType.CommandPlaceholder, action.Node.Name);

            return(template);
        }
Exemple #2
0
        private ResourceTemplate GetQueryActionTemplate(IDictionary <ResourceTemplateType, ResourceTemplate> templates, ControllerActionGroup action)
        {
            var template = templates[ResourceTemplateType.WebControllerGet];

            template.ResetParameters();

            var routePlaceholder = GetQueryRoutePlaceholder(action.Node, action.DomainPlural, action.DomainSingular);
            var vmPlaceholder    = $"{GetQueryBaseName(action.Node, trimGet: true)}Vm";

            template.SetParameter(TemplateParameterType.RoutePlaceholder, routePlaceholder);
            template.SetParameter(TemplateParameterType.QueryPlaceholder, action.Node.Name);
            template.SetParameter(TemplateParameterType.VmPlaceholder, vmPlaceholder);

            return(template);
        }
Exemple #3
0
        private ResourceTemplate GetActionTemplate(IDictionary <ResourceTemplateType, ResourceTemplate> templates, ControllerActionGroup action)
        {
            switch (action.Node.NodeType)
            {
            case AppNodeType.Query:
            case AppNodeType.ListQuery:
            case AppNodeType.BoolQuery:
                return(GetQueryActionTemplate(templates, action));

            case AppNodeType.Command:
                return(GetCommandActionTemplate(templates, action, ResourceTemplateType.WebControllerCommand));

            case AppNodeType.InsertCommand:
                return(GetCommandActionTemplate(templates, action, ResourceTemplateType.WebControllerCreate));

            case AppNodeType.UpdateCommand:
                return(GetCommandActionTemplate(templates, action, ResourceTemplateType.WebControllerUpdate));

            case AppNodeType.DeleteCommand:
                return(GetCommandActionTemplate(templates, action, ResourceTemplateType.WebControllerDelete));

            default:
                return(null);
            }
        }