public SocketServer(ILogger logger, IStateRequestRouter stateRequestRouter, IConnectionRegistry connectionRegistry, IQueryResolver queryResolver) { _queryResolver = queryResolver; _logger = logger; _stateRequestRouter = stateRequestRouter; _connectionRegistry = connectionRegistry; }
public bool Update(Entity entity, IQueryResolver queryResolver, bool ignorePermissions = false) { entity = UnwrapAttributeValue(entity); string primaryKey = entity.IdName; entity.Remove(primaryKey); List <string> sets = new List <string>(); List <object> values = new List <object>(); //query string //query.ColumnSet.Columns.Clear(); //query.ColumnSet.Columns.Add(primaryKey); var queryString = queryResolver.ToSqlString(false, ignorePermissions); values.AddRange(queryResolver.Parameters.Args); StringBuilder sql = new StringBuilder(); sql.AppendLine(string.Format("UPDATE [{0}]", entity.Name)); sql.AppendLine("SET"); int i = values.Count; foreach (var k in entity.Keys) { values.Add(entity[k]); sets.Add(string.Format("[{0}]={1}", k, "@" + i)); i++; } sql.AppendLine(string.Join(",\n", sets)); sql.AppendLine(string.Format("WHERE [{0}] IN({1})", primaryKey, queryString)); var flag = _repository.Execute(sql.ToString(), values.ToArray()) > 0; return(flag); }
public static async Task <UserInfo> GetCurrentUser(this IQueryResolver resolver) { return((await resolver.ExecuteAsync <UsersQuery, IEnumerable <UserInfo> >(new UsersQuery { OnlyMe = true })) .SingleOrDefault()); }
void EnsureQueryResolver(AppFactory factory) { if (resolver_ == null) { resolver_ = (cache_provider_ == null) ? factory.CreateQueryResolver() : factory.CreateQueryResolver(cache_provider_); } }
private string GetChartDataSqlString(ReportDescriptor report, IQueryResolver queryTranslator) { //drillthrough, aggregation var columnField = report.CustomReport.Chart.ColumnAxis.Field; var nameField = GetFieldValueName(queryTranslator, columnField); if (!columnField.IsCaseInsensitiveEqual(nameField)) { nameField = "," + nameField; } else { nameField = string.Empty; } columnField = GetGroupingName(report, queryTranslator, columnField); var sql = "SELECT "; var orderby = ""; if (report.CustomReport.Filter != null) { sql += " TOP " + report.CustomReport.Filter.Value; orderby = " ORDER BY " + report.CustomReport.Filter.Field + (report.CustomReport.Filter.Operator == FilterOperator.TopN ? " DESC" : ""); } sql += columnField + " AS " + report.CustomReport.Chart.ColumnAxis.Field + nameField; foreach (var item in report.CustomReport.Chart.ValueAxes) { var column = report.CustomReport.Columns.Find(n => n.Field.IsCaseInsensitiveEqual(item.Field)); sql += string.Format(",{0} AS {1}", DataFieldExpressionHelper.GetAggregationExpression(column.SummaryValue.Value, item.Field), item.Field); } sql += string.Format(" FROM ({0}) a GROUP BY {1} {2}", queryTranslator.ToSqlString(), columnField + nameField, orderby); return(sql); }
public SqlOrderByBinder(OrderByClause orderByClause) { //TODO: Resolver posteriormente de maneira mais elegante if (orderByClause != null) { Query = new OrderByOperatorResolver(orderByClause); } }
public Query(IQueryResolver queryResolver) { Name = "Query"; Field <ListGraphType <SeriesType> >("series", arguments: queryResolver.GetSeries.Args, resolve: queryResolver.GetSeries.Resolve); Field <ListGraphType <MissionType> >("mission", arguments: queryResolver.GetMissions.Args, resolve: queryResolver.GetMissions.Resolve); Field <ListGraphType <LogType> >("log", arguments: queryResolver.GetLogs.Args, resolve: queryResolver.GetLogs.Resolve); Field <ListGraphType <EventType> >("event", arguments: queryResolver.GetEvents.Args, resolve: queryResolver.GetEvents.Resolve); // Field<FileQueryType>("file", resolve: context => new { }); }
public NotificationEventsHub(NavigationManager navigationManager, IHubContext <NotificationEventsHub> hubContext, IConnectionsRepository connectionsRepository, IQueryResolver queryResolver, IUiEventsSettings settings) : base(hubContext, connectionsRepository, () => navigationManager.ToAbsoluteUri(settings.NotificationEventsUrl) ) { _queryResolver = queryResolver; }
/// <inheritdoc /> public ZevereQuery(IQueryResolver resolver) { Name = nameof(ZevereQuery); Field <UserType>("user", "Get user account information by id", new QueryArguments(new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "userId" }), resolver.GetUserAsync ); }
public string GetFieldValueName(IQueryResolver queryTranslator, string field, Schema.Domain.Attribute attr = null) { if (attr == null) { var alias = queryTranslator.AttributeAliasList.Find(n => n.Alias.IsCaseInsensitiveEqual(field)); if (alias != null) { attr = queryTranslator.AttributeList.Find(n => n.Name.IsCaseInsensitiveEqual(alias.Name)); } } field = attr.GetNameField(field); return(field.ToLower()); }
public EndToEndPathStrategy(ICommandResolver commandResolver, IQueryResolver queryResolver) { if (commandResolver == null) { throw new ArgumentNullException(nameof(commandResolver)); } if (queryResolver == null) { throw new ArgumentNullException(nameof(queryResolver)); } this.commandResolver = commandResolver; this.queryResolver = queryResolver; }
public EntityFrameworkDataSource( DbContext context, IConnectionFactory connectionFactory, IQueryResolver queryResolver, ICommandHandlerResolver commandHandlerResolver, IValidatorResolver valdiatorResolver ) { Context = context; ConnectionFactory = connectionFactory; QueryResolver = queryResolver; CommandHandlerResolver = commandHandlerResolver; ValidatorResolver = valdiatorResolver; entitiesDataSource = new EntityFrameworkEntitiesDataSource(Context); readonlyEntitiesDataSource = new EntityFrameworkReadOnlyEntitiesDataSource(Context); }
public SqlFilterBinder(FilterClause filterClause) { if (filterClause != null) { //TODO: Resolver posteriormente de maneira mais elegante if (filterClause.Expression is BinaryOperatorNode) { Query = new BinaryOperatorResolver(filterClause.Expression as BinaryOperatorNode); } else if (filterClause.Expression is SingleValueFunctionCallNode) { Query = new SingleValueFunctionResolver(filterClause.Expression as SingleValueFunctionCallNode); } } }
public DataTable GetData(ReportDescriptor report, IQueryResolver queryTranslator, FilterExpression filter = null) { if (filter != null) { //设置过滤条件中特殊字段的名称 //foreach (var item in filter.Conditions) //{ // item.AttributeName = GetFieldValueName(queryTranslator, item.AttributeName); //} report.CustomReport.Query.Criteria = filter;//.AddFilter(filter); } var sql = queryTranslator.ToSqlString(); //获取数据 var ds = new DataVisitor(DbContext).ExecuteQueryDataSet(sql, queryTranslator.Parameters.Args.ToArray()); return(ds.Tables[0]); }
/// <inheritdoc /> public UserType(IQueryResolver queryResolver) { Name = "User"; Description = "A Zevere user account"; Field(_ => _.Id) .Description("User name"); Field(_ => _.FirstName) .Description("First name"); Field(_ => _.LastName, true) .Description("Last name"); Field(_ => _.Token, true) .Description("Authentication token"); Field(_ => _.DaysJoined) .Description("Number of days this user has joined"); Field(_ => _.JoinedAt) .Description("The date account was created in UTC format. Time should be set to the midnight."); Field <TaskListType>( "list", "A list that this user has access to", new QueryArguments( new QueryArgument <NonNullGraphType <StringGraphType> > { Name = "listId", Description = "Name of the list", } ), queryResolver.GetTaskListForUserAsync ); Field <ListGraphType <TaskListType> >( "lists", "Tasks lists that this user has access to", resolve: queryResolver.GetAllTaskListsForUserAsync ); }
public string GetGroupingName(ReportDescriptor report, IQueryResolver queryTranslator, string field, bool includeAlias = false) { var groupObj = report.CustomReport.Groupings.Find(n => n.Field.IsCaseInsensitiveEqual(field)); if (groupObj != null && groupObj.DateGrouping.HasValue) { if (includeAlias) { var alias = queryTranslator.AttributeAliasList.Find(n => n.Alias.IsCaseInsensitiveEqual(field)); if (alias != null) { field = alias.EntityAlias + "." + alias.Name; } } field = DataFieldExpressionHelper.GetDateGroupingExpression(groupObj.DateGrouping.Value, field); } else if (groupObj != null && !groupObj.DateGrouping.HasValue) { field = GetFieldValueName(queryTranslator, field); } return(field); }
/// <inheritdoc /> public TaskListType(IQueryResolver queryResolver) { Name = "List"; Description = "Task list"; Field(_ => _.DisplayId) .Name("id") .Description("List's ID"); Field(_ => _.Title) .Description("Short title of this list"); Field(_ => _.OwnerId) .Name("owner") .Description("User ID of this task list's owner"); Field(_ => _.CreatedAt) .Description("List creation date"); Field(_ => _.Description, nullable: true) .Description("Task list descriptions"); Field(_ => _.ModifiedAt, nullable: true) .Name("updatedAt") .Description("Last time this list was updated"); Field(_ => _.Tags, type: typeof(ListGraphType <NonNullGraphType <StringGraphType> >)) .Description("List's tags"); Field(_ => _.Collaborators, type: typeof(ListGraphType <NonNullGraphType <StringGraphType> >)) .Description("User IDs of the list collaborators"); Field <ListGraphType <TaskItemType> >( "tasks", "Task items in this list", resolve: queryResolver.GetTaskItemsForListAsync ); }
public DataTable GetData(ReportDescriptor report, IQueryResolver queryTranslator, FilterExpression filter = null) { return(_reportRepository.GetData(report, queryTranslator, filter)); }
public DataTable GetChartData(ReportDescriptor report, IQueryResolver queryTranslator) { return(_reportRepository.GetChartData(report, queryTranslator)); }
public string GetGroupingName(ReportDescriptor report, IQueryResolver queryTranslator, string field, bool includeAlias = false) { return(_reportRepository.GetGroupingName(report, queryTranslator, field, includeAlias)); }
public string GetFieldValueName(IQueryResolver queryTranslator, string field, Schema.Domain.Attribute attr = null) { return(_reportRepository.GetFieldValueName(queryTranslator, field, attr)); }
public DotNetModuleURIResolver(IQueryResolver resolver) { this.resolver = resolver; }
/// <summary> /// Initializes a new instance of the <see cref="QueryResolverProxy"/> /// class using the specified <see cref="IQueryResolver"/>. /// </summary> /// <param name="resolver"> /// A <see cref="IQueryResolver"/> object that is used to resolve a query /// when it is not found in cache. /// </param> /// <param name="cache"> /// A <see cref="ICache{T}"/> object that can be used to cache resolved /// <see cref="IQuery"/>. /// </param> public QueryResolverProxy(IQueryResolver resolver, ICache<IQuery> cache) { resolver_ = resolver; cache_ = cache; }
public QueryFactory(IQueryResolver queryResolver) { this.queryResolver = queryResolver; }
/// <summary> /// Sets the <see cref="IQueryProcessor"/> tha should be used to build /// a <see cref="QueryServer"/> object. /// </summary> /// <param name="resolver"> /// The <see cref="QuerySettings"/> object that should be used to build a /// <see cref="QueryServer"/>. /// </param> /// <returns> /// A <see cref="Builder"/> that uses <see cref="resolver"/> to build /// a <see cref="QueryServer"/> instance. /// </returns> public Builder SetQueryResolver(IQueryResolver resolver) { resolver_ = resolver; return this; }
/// <summary> /// Initializes a new instance of the <see cref="QueryProcessor"/> using /// the specified <see cref="IQueryResolver"/> object. /// </summary> /// <param name="resolver"> /// A <see cref="IQueryResolver"/> object that is used to resolve queries. /// </param> public QueryProcessor(IQueryResolver resolver) { resolver_ = resolver; }
public QueryFactory(IQueryResolver queryResolver) { _queryResolver = queryResolver; }
/// <summary> /// Sets the <see cref="IQueryProcessor"/> tha should be used to build /// a <see cref="QueryServer"/> object. /// </summary> /// <param name="resolver"> /// The <see cref="QuerySettings"/> object that should be used to build a /// <see cref="QueryServer"/>. /// </param> /// <returns> /// A <see cref="Builder"/> that uses <see cref="resolver"/> to build /// a <see cref="QueryServer"/> instance. /// </returns> public Builder SetQueryResolver(IQueryResolver resolver) { resolver_ = resolver; return(this); }
public QueryProcessor(IQueryResolver resolver, IQueryDataSource dataSource) { _resolver = resolver; _dataSource = dataSource; }
public SearchProvider(IQueryResolver <Displayable> resolver, IProfiler profiler) { Resolver = resolver; Profiler = profiler; //CacheProvider = cacheProvider; }
/// <summary> /// Creates an instance of the <see cref="IQueryProcessor"/> class using /// the specified <see cref="IQueryResolver"/> object. /// </summary> /// <param name="resolver"> /// A <see cref="IQueryResolver"/> object. /// </param> /// <returns> /// The newly created <see cref="IQueryProcessor"/> object. /// </returns> public QueryProcessor CreateQueryProcessor(IQueryResolver resolver) { return new QueryProcessor(resolver); }
public ContentController(AthenaData data, IQueryResolver queryResolver) { this.data = data; this.queryResolver = queryResolver; }
/// <summary> /// Creates an instance of the <see cref="IQueryProcessor"/> class using /// the specified <see cref="IQueryResolver"/> object. /// </summary> /// <param name="resolver"> /// A <see cref="IQueryResolver"/> object. /// </param> /// <returns> /// The newly created <see cref="IQueryProcessor"/> object. /// </returns> public QueryProcessor CreateQueryProcessor(IQueryResolver resolver) { return(new QueryProcessor(resolver)); }