Beispiel #1
0
        public List <GraphQlAfElementTemplate> GetAfElementTemplates(ResolveFieldContext context, string aAfDatabasePath, string[] nameFilter = null)
        {
            aAfDatabasePath = cleanupPath(aAfDatabasePath);
            if (attemptLogin(context, getPiSystemName(aAfDatabasePath)))
            {
                var aAfDb = AFDatabase.FindObject(aAfDatabasePath) as AFDatabase;
                if (aAfDb == null)
                {
                    context.Errors.Add(new ExecutionError($"AFDatabase not found."));
                    return(null);
                }

                var nameFilterStrings = nameFilter != null?nameFilter.ToList() : new List <string>();

                var afElementsField = GraphQlHelpers.GetFieldFromContext(context, "afElements");

                var returnObject = new ConcurrentBag <GraphQlAfElementTemplate>();

                var aAfElementTemplateList = aAfDb.ElementTemplates;
                Parallel.ForEach(aAfElementTemplateList, aAfElementTemplate =>
                {
                    if (nameFilterStrings.Count == 0 || nameFilterStrings.Contains(aAfElementTemplate.Name))
                    {
                        var graphQlAfElementTemplate = new GraphQlAfElementTemplate(aAfElementTemplate, afElementsField);
                        returnObject.Add(graphQlAfElementTemplate);
                    }
                });
                return(returnObject.OrderBy(x => x.name).ToList());
            }
            else
            {
                return(null);
            }
        }
Beispiel #2
0
        public QLAfDatabase GetAfDatabase(IResolveFieldContext context, string aAfDatabasePath)
        {
            aAfDatabasePath = cleanupPath(aAfDatabasePath);

            var aAfDb = AFDatabase.FindObject(aAfDatabasePath) as AFDatabase;

            var afElementsField = GraphQlHelpers.GetFieldFromFieldOrContext(context, "afElements");

            var aGraphQlAfDatabase = new QLAfDatabaseResolve(aAfDb, afElementsField);

            return(aGraphQlAfDatabase);
        }
Beispiel #3
0
        public GraphQlAfDatabase GetAfDatabase(ResolveFieldContext context, string aAfDatabasePath)
        {
            aAfDatabasePath = cleanupPath(aAfDatabasePath);
            if (attemptLogin(context, getPiSystemName(aAfDatabasePath)))
            {
                var aAfDb = AFDatabase.FindObject(aAfDatabasePath) as AFDatabase;

                var afElementsField = GraphQlHelpers.GetFieldFromContext(context, "afElements");

                var aGraphQlAfDatabase = new GraphQlAfDatabase(aAfDb, afElementsField);

                return(aGraphQlAfDatabase);
            }
            else
            {
                return(null);
            }
        }