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); } }
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); }
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); } }