public static async Task <IIndexedDict[]> GetSchema(AsyncExprCtx ctx, QueryTemplate qt) { var conn = (IDbConn)await ctx.GetValue(qt.connName); var schema = (System.Data.DataTable) await conn.ExecCmd(new SqlCommandData() { Kind = CommandKind.GetSchema, SqlText = qt.queryTemplateText.Replace("{0}", string.Empty), ConvertMultiResultsToLists = qt.arrayResults }, ctx.Cancellation); int nCols = schema.Columns.Count; var key2ndx = new Dictionary <string, int>(nCols, StringComparer.OrdinalIgnoreCase); for (int i = 0; i < nCols; i++) { key2ndx[schema.Columns[i].ColumnName] = i; } int nRows = schema.Rows.Count; var res = new IIndexedDict[nRows]; for (int i = 0; i < nRows; i++) { res[i] = ValuesDictionary.New(schema.Rows[i].ItemArray, key2ndx); } return(res); // todo }
public TestOutcome CreateQuery(string referenceName) { TestOutcome outcome = new TestOutcome(); outcome.moduleName = "Queries"; outcome.methodName = "QueriesBuild"; try { QueriesApi queriesApi = new QueriesApi(_url); QueryTemplateArray templates = queriesApi.QueriesTemplates(_session.SessionId, "QueueItem"); foreach (QueryTemplate template in templates) { Console.WriteLine(template.Title); } QueryTemplate a_template = templates[0]; Dictionary <string, string> options = new Dictionary <string, string>(); options["reference"] = referenceName; options["properties"] = ""; Query query = queriesApi.QueriesBuild(_session.SessionId, a_template.InternalRef, new QueryArguments(options)); Console.WriteLine(query.Id); outcome.outcome = "Success"; return(outcome); } catch (Exception ex) { outcome.outcome = ex.Message; return(outcome); } }
private static List <MSLivingChoices.Configuration.Entities.SearchTemplates.SearchTemplates> GetSearchTemplates() { object obj; List <MSLivingChoices.Configuration.Entities.SearchTemplates.SearchTemplates> searchTemplates = null; if (MSLivingChoices.Configuration.ConfigurationManager.GetSection("searchTemplates", out obj)) { SearchTemplatesSection searchTemplatesSection = (SearchTemplatesSection)obj; searchTemplates = new List <MSLivingChoices.Configuration.Entities.SearchTemplates.SearchTemplates>(); foreach (CountryElement countryList in searchTemplatesSection.CountryList) { MSLivingChoices.Configuration.Entities.SearchTemplates.SearchTemplates searchTemplate = new MSLivingChoices.Configuration.Entities.SearchTemplates.SearchTemplates() { Placeholder = countryList.Placeholder, CountryCode = countryList.CountryCode }; foreach (TemplateElement template in countryList.Templates) { QueryTemplate queryTemplate = new QueryTemplate() { LookupLocation = template.LookupLocation, Template = template.Template, Url = template.Url }; searchTemplate.Templates.Add(queryTemplate); } searchTemplates.Add(searchTemplate); } } return(searchTemplates); }
private QueryTemplate[] GetTemplatesByNodeUrnPath(string urnPath) { QueryTemplate[] templates = new QueryTemplate[0]; GeneralOptions options = (GeneralOptions)package.GetDialogPage(typeof(GeneralOptions)); switch (urnPath) { case "Server": templates = options.ServerTemplates; break; case "Server/Database": templates = options.DatabaseTemplates; break; case "Server/Database/Table": templates = options.TableTemplates; break; case "Server/Database/Table/Column": templates = options.ColumnTemplates; break; } return(templates); }
void PagedListEntity() //ref IPagedList<E> in_out) { using (IDbConnection conn = Db.ConnectionFactory.Create()) { SqlMapper.GridReader grid = conn.QueryMultiple(QueryTemplate.CreatePagedListQuery("", new string[] { "ID" })); grid.ReadSingle <int>(); grid.ReadSingle <int>(); grid.Read <E>(); } }
public async virtual Task <E> GetEntityAsync(int id) { var result = default(E); if (id > 0) { result = await Db.SelectAsync <E>(QueryTemplate.CreateSelectQuery(), DbParameters.Create(new { id = id })); } return(result); }
public virtual E GetEntity(int id) { var result = default(E); if (id <= 0) { return(result); } return(Db.Select <E>(QueryTemplate.CreateSelectQuery(), DbParameters.Create(new { id = id }))); }
private static void BindAndRunQuery <TPayload>(string queryName, CepStream <TPayload> queryStream, EventShape outputEventShape, List <string> inputFields, List <string> outputFields) { var inputConfig = new CsvInputConfig { InputFileName = @"..\..\..\TollInput.txt", Delimiter = new char[] { ',' }, BufferSize = 4096, CtiFrequency = 1, CultureName = "en-US", Fields = inputFields, NonPayloadFieldCount = 2, StartTimePos = 1, EndTimePos = 2 }; // The adapter recognizes empty filename as a write to console. var outputConfig = new CsvOutputConfig { OutputFileName = string.Empty, Delimiter = new string[] { "\t" }, CultureName = "en-US", Fields = outputFields }; // Note - Please change the instance name to the one you have chosen during installation using (var server = Server.Create("Default")) { Application application = server.CreateApplication("TollStationApp"); // set up input and output adapters InputAdapter inputAdapter = application.CreateInputAdapter <CsvInputFactory>("input", "Csv Input Source"); OutputAdapter outputAdapter = application.CreateOutputAdapter <CsvOutputFactory>("output", "Csv Output"); // set up the query template QueryTemplate queryTemplate = application.CreateQueryTemplate("QueryTemplate", string.Empty, queryStream); // set up advance time settings to enqueue CTIs var advanceTimeGenerationSettings = new AdvanceTimeGenerationSettings(inputConfig.CtiFrequency, TimeSpan.Zero, true); var advanceTimeSettings = new AdvanceTimeSettings(advanceTimeGenerationSettings, null, AdvanceTimePolicy.Adjust); // Bind query template to input and output streams QueryBinder queryBinder = new QueryBinder(queryTemplate); queryBinder.BindProducer <TollReading>("TollStream", inputAdapter, inputConfig, EventShape.Interval, advanceTimeSettings); queryBinder.AddConsumer("outputStream", outputAdapter, outputConfig, outputEventShape, StreamEventOrder.FullyOrdered); // Create a runnable query by binding the query template to the input stream of interval events, // and to an output stream of fully ordered point events (through an output adapter instantiated // from the output factory class) Query query = application.CreateQuery(queryName, "Hello Toll Query", queryBinder); RunQuery(query); } }
public static ExamTemplateCollection GetExamTemplates() { XmlElement templates = QueryTemplate.GetAbstractList(); ExamTemplateCollection objTemplates = new ExamTemplateCollection(); foreach (XmlElement each in templates.SelectNodes("ExamTemplate")) { ExamTemplate template = new ExamTemplate(each); objTemplates.Add(template.Identity, template); } return(objTemplates); }
public TemplateLookup() { _lookup_table = new Dictionary <string, string>(); XmlElement xmlRecords = QueryTemplate.GetAbstractList(); foreach (XmlElement each in xmlRecords.SelectNodes("ExamTemplate")) { string name = each.SelectSingleNode("TemplateName").InnerText; string id = each.GetAttribute("ID"); _lookup_table.Add(name, id); } }
public static TEIncludeCollection GetTEIncludes() { XmlElement xmlRecords = QueryTemplate.GetIncludeExamList(); TEIncludeCollection includes = new TEIncludeCollection(); foreach (XmlElement each in xmlRecords.SelectNodes("IncludeExam")) { TEInclude include = new TEInclude(each); includes.Add(include.Identity, include); } return(includes); }
/// <summary> /// Creates and binds a query with a single input stream. /// </summary> private static Query CreateQuery(Application application, CepStream <EventType> streamDefinition, Uri inputAddress, Uri outputAddress) { QueryTemplate template = application.CreateQueryTemplate("QueryTemplate", null, streamDefinition); QueryBinder binder = new QueryBinder(template); InputAdapter inputAdapter = application.CreateInputAdapter <WcfInputAdapterFactory>("InputAdapter", null); binder.BindProducer("Input", inputAdapter, inputAddress, EventShape.Point); OutputAdapter outputAdapter = application.CreateOutputAdapter <WcfOutputAdapterFactory>("OutputAdapter", null); binder.AddConsumer("Output", outputAdapter, outputAddress, EventShape.Point, StreamEventOrder.FullyOrdered); Query query = application.CreateQuery("Query", null, binder); return(query); }
public virtual E SaveEntity(E entity) { IDbParameters dbParameters = DbParameters.Create(entity); if (entity.Id > 0) { this.Db.Execute(QueryTemplate.CreateUpdateQuery(), dbParameters); } else { entity = Db.ExecuteAndQuery <E>(QueryTemplate.CreateInsertQuery(), dbParameters); } return(entity); }
public virtual async Task <E> SaveEntityAsync(E entity) { IDbParameters dbParameters = DbParameters.Create(entity); if (entity.Id > 0) { await this.Db.ExecuteAsync(QueryTemplate.CreateUpdateQuery(), dbParameters); } else { entity = await Db.ExecuteAndQueryAsync <E>(QueryTemplate.CreateInsertQuery(), dbParameters); } return(entity); }
private QueryTemplate[] GetTemplates(string nodeUrnPath, string nodeName) { QueryTemplate[] filteredTemplates = new QueryTemplate[0]; GeneralOptions options = (GeneralOptions)package.GetDialogPage(typeof(GeneralOptions)); QueryTemplate[] templates = GetTemplatesByNodeUrnPath(nodeUrnPath); if (templates != null) { filteredTemplates = templates.Where(t => t.Objects == "*" || t.Objects.Contains(nodeName)).ToArray(); } return(filteredTemplates); //foreach (QueryTemplate template in templates) { // if (template.Objects == "*" || template.Objects.Contains(nodeName)) { // } //} }
public void DrawDebugItem() { var generator = new List <QueryGenerator>() { new Generator_Spiral(new ContextQuerier()) }; var template = new QueryTemplate(generator, new List <QueryTest>()); var wrapper = Manager.RunEQSQuery(template, _querier); wrapper.Run(); DebugDrawFactory.Get().RegisterFactory(DebugShape.Sphere, item => { // * Write draw API in here. Console.Write($"{item.Point} => {item.Score}"); }); wrapper.QueryResult.DrawDebugItem(DebugShape.Sphere); }
public void GetBestScoreResult() { var generator = new List <QueryGenerator>() { new Generator_Spiral(new ContextQuerier()) }; var tests = new List <QueryTest>() { new Test_Distance(new ContextQuerier()) }; var template = new QueryTemplate(generator, tests); var wrapper = Manager.RunEQSQuery(template, _querier); wrapper.Run(); var result = wrapper.QueryResult.GetBestScoreResult <Vector3>(); Assert.AreEqual(wrapper.QueryResult.GetItem <Vector3>(wrapper.QueryResult.Length), result); }
public override User SaveEntity(User entity) { IDbParameters dbParameters = DbParameters.Create(entity); IList <string> excludedColumns = null; if (String.IsNullOrEmpty(entity.PasswordData)) { excludedColumns = new List <string> { "PasswordData" }; } if (entity.Id > 0) { return(this.Db.ExecuteAndQuery <User>(QueryTemplate.CreateUpdateQuery(excludedColumns), dbParameters)); } else { return(Db.ExecuteAndQuery <User>(QueryTemplate.CreateInsertQuery(excludedColumns), dbParameters)); } }
private void ScriptQuery_Click(object sender, EventArgs e) { ToolStripMenuItem item = (ToolStripMenuItem)sender; QueryTemplate template = (QueryTemplate)item.Tag; string context = this.Parent.Context; string[] text = GetQueryByContext(((QueryTemplate)item.Tag).Template, context); ServiceCache.ScriptFactory.CreateNewBlankScript(Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ScriptType.Sql); EnvDTE.TextDocument doc = (EnvDTE.TextDocument)ServiceCache.ExtensibilityModel.ActiveDocument.Object(null); StringBuilder sb = new StringBuilder(); foreach (string str in text) { sb.AppendLine(str); } doc.EndPoint.CreateEditPoint().Insert(sb.ToString()); if (template.Autoexec) { doc.DTE.ExecuteCommand("Query.Execute"); } }
/// <summary> /// Raises the <see cref="E:System.Web.UI.Control.PreRender"/> event. Parents CreateChildControls() logic moved here for processing /// data of input renderer. /// </summary> /// <param name="e">An <see cref="T:System.EventArgs"/> object that contains the event data.</param> protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); if (!string.IsNullOrEmpty(QueryTemplate)) { foreach (var param in HttpContext.Current.Request.Params.AllKeys) { if (this.QueryTemplate.Contains("%" + param + "%")) { _hasUrlInput = true; break; } } foreach (var key in HttpContext.Current.Request.Form.AllKeys) { var controlName = string.Empty; if (key.Contains('$')) { controlName = key.Remove(0, key.LastIndexOf('$') + 1); } if (QueryTemplate.Contains("%" + controlName + "%")) { _hasFormInput = true; break; } } } Exception controlException = null; if (_hasFormInput || HttpContext.Current.Request.QueryString.ToString().Contains(Math.Abs((PortalContext.Current.ContextNodePath + this.ID).GetHashCode()).ToString()) || _hasUrlInput) { try { this.GetQueryFilter(); // initialize query filter to see if query is invalid for empty search } catch (Exception ex) { Logger.WriteException(ex); controlException = new InvalidContentQueryException(this.QueryTemplate, innerException: ex); } var errorPanel = this.FindControlRecursive(EmptyQueryErrorPanelID); if (errorPanel != null) { errorPanel.Visible = _invalidQuery; } if (_invalidQuery) { return; } Content rootContent = null; try { rootContent = GetModel() as Content; if (rootContent != null) { rootContent.ChildrenDefinition.AllChildren = AllChildren; } } catch (Exception ex) { Logger.WriteException(ex); if (controlException == null) { controlException = ex; } } var model = new ParametricSearchViewModel { State = State, SearchParameters = _searchParams.Select(searchParam => new SearchParameter { Name = searchParam.Key, Value = searchParam.Value }). ToArray() }; try { var childCount = 0; if (rootContent != null) { try { childCount = rootContent.Children.Count(); } catch (Exception ex) { Logger.WriteException(ex); if (controlException == null) { controlException = ex; } } } try { model.Pager = GetPagerModel(childCount, State, string.Empty); } catch (Exception ex) { Logger.WriteException(ex); if (controlException == null) { controlException = ex; } //in case of error, set dummy pager model model.Pager = new PagerModel(0, State, string.Empty); } model.Content = rootContent; if (RenderingMode == RenderMode.Xslt) { XmlModelData = model.ToXPathNavigator(); } else if (RenderingMode == RenderMode.Ascx || RenderingMode == RenderMode.Native) { if (CanCache && Cacheable && IsInCache) { return; } var viewPath = RenderingMode == RenderMode.Native ? "/root/Global/Renderers/ContentCollectionView.ascx" : Renderer; Control presenter = null; try { presenter = Page.LoadControl(viewPath); } catch (Exception ex) { Logger.WriteException(ex); if (controlException == null) { controlException = ex; } } if (presenter != null) { var ccView = presenter as ContentCollectionView; if (ccView != null) { ccView.Model = model; } if (rootContent != null) { var itemlist = presenter.FindControl(ContentListID); if (itemlist != null) { try { ContentQueryPresenterPortlet.DataBindingHelper.SetDataSourceAndBind(itemlist, rootContent.Children); } catch (Exception ex) { Logger.WriteException(ex); if (controlException == null) { controlException = ex; } } } } var itemPager = presenter.FindControl("ContentListPager"); if (itemPager != null) { try { ContentQueryPresenterPortlet.DataBindingHelper.SetDataSourceAndBind(itemPager, model.Pager.PagerActions); } catch (Exception ex) { Logger.WriteException(ex); if (controlException == null) { controlException = ex; } } } Controls.Add(presenter); } } } catch (Exception ex) { Logger.WriteException(ex); if (controlException == null) { controlException = ex; } } } try { if (controlException != null) { BuildErrorMessage(controlException); } } catch (Exception ex) { var errorText = SNSR.GetString(SNSR.Portlets.ContentCollection.ErrorLoadingContentView, HttpUtility.HtmlEncode(ex.Message)); this.Controls.Clear(); this.Controls.Add(new LiteralControl(errorText)); } ChildControlsCreated = true; }
private async Task <IEnumerable <RevenueBySite> > RevenueByAllSites <RType>(ResolveFieldContext context, QueryTemplate <RType> query, DateTime date) where RType : IRevenue { if (context.ThrowIfInvalidAuthorization() == false) { return(null); } var sitekeys = context.GetAllSiteIds(); List <RevenueBySite> results = new List <RevenueBySite>(); using (IStatelessSession session = mysqlDataAccessor.SessionFactory.OpenStatelessSession()) { foreach (int site in sitekeys) { var result = await query(session, date, new int[] { site }); RevenueBySite line = new RevenueBySite { siteid = site, sumofmoney = result.Sum(x => x.Revenue) }; results.Add(line); } } return(results.OrderByDescending(x => x.sumofmoney)); }
private async Task <RevenueBySummary> GetRevenueBySummaryAsync <RType>(ResolveFieldContext context, QueryTemplate <RType> query, DateTime date) where RType : IRevenue { try { if (context.ThrowIfInvalidAuthorization() == false) { return(null); } var keys = context.GetAllSiteIds(); using (IStatelessSession session = mysqlDataAccessor.SessionFactory.OpenStatelessSession()) { var result = await query(session, date, keys); RevenueBySummary summary = new RevenueBySummary(); double money = result.Sum(x => x.Revenue); summary.sumofmoney = money; return(summary); } } catch (Exception ex) { context.Errors.Add(new GraphQL.ExecutionError(ex.Message, ex)); return(null); } }
private async Task <IEnumerable <RevenueBySite> > RevenueSitesByRcc <RType>(ResolveFieldContext context, QueryTemplate <RType> query, DateTime date, int rcc) where RType : IRevenue { if (context.ThrowIfInvalidAuthorization() == false) { return(null); } var rcckeys = context.GetSiteKeysByRcc(); List <RevenueBySite> results = new List <RevenueBySite>(); if (rcckeys.ContainsKey(rcc) == false) { context.Errors.Add(new GraphQL.ExecutionError("대상 RCC의 지역 사이트는 소유하지 않았습니다")); return(null); } using (var session = mysqlDataAccessor.SessionFactory.OpenStatelessSession()) { var result = await query(session, date, rcckeys[rcc]); return(result.Select(x => new RevenueBySite { siteid = x.Siteid, sumofmoney = x.Revenue })); } }
private async Task <RevenueBySite> RevenueSitesBysite <RType>(ResolveFieldContext context, QueryTemplate <RType> query, DateTime date, int site) where RType : IRevenue { if (context.ThrowIfInvalidAuthorization() == false) { return(null); } var siteKeys = context.GetAllSiteIds(); if (siteKeys.Contains(site) == false) { context.Errors.Add(new GraphQL.ExecutionError("대상 사이트는 소유하지 않았습니다")); return(null); } using (IStatelessSession session = mysqlDataAccessor.SessionFactory.OpenStatelessSession()) { var result = await query(session, date, new int[] { site }); RevenueBySite line = new RevenueBySite { siteid = site, sumofmoney = result.Sum(x => x.Revenue) }; return(line); } }
private async Task <RevenueModelByRcc> RevenueByRcc <RType>(ResolveFieldContext context, QueryTemplate <RType> query, DateTime date, int rcc) where RType : IRevenue { if (context.ThrowIfInvalidAuthorization() == false) { return(null); } var rcckeys = context.GetSiteKeysByRcc(); List <RevenueModelByRcc> results = new List <RevenueModelByRcc>(); if (rcckeys.ContainsKey(rcc) == false) { context.Errors.Add(new GraphQL.ExecutionError("대상 RCC의 지역 사이트는 소유하지 않았습니다")); return(null); } IEnumerable <int> siteKeys = rcckeys[rcc]; using (IStatelessSession session = mysqlDataAccessor.SessionFactory.OpenStatelessSession()) { var result = await query(session, date, siteKeys); RevenueModelByRcc line = new RevenueModelByRcc { rcc = rcc, sumofmoney = result.Sum(x => x.Revenue) }; return(line); } }
private async Task <IEnumerable <RevenueModelByRcc> > RevenueByAll <RType>(ResolveFieldContext context, QueryTemplate <RType> query, DateTime date) where RType : IRevenue { if (context.ThrowIfInvalidAuthorization() == false) { return(null); } var rcckeys = context.GetSiteKeysByRcc(); List <RevenueModelByRcc> results = new List <RevenueModelByRcc>(); using (IStatelessSession session = mysqlDataAccessor.SessionFactory.OpenStatelessSession()) { foreach (int rcc in rcckeys.Keys) { IEnumerable <int> siteKeys = rcckeys[rcc]; var rows = await query(session, date, siteKeys); RevenueModelByRcc line = new RevenueModelByRcc { rcc = rcc, sumofmoney = rows.Sum(x => x.Revenue) }; line.sites = rows.Select(x => new RevenueBySite { siteid = x.Siteid, sumofmoney = x.Revenue }); results.Add(line); } return(results); } }
public QueryControlsBuilder(QueryTemplate template, Query query) { _template = template; _query = query; }
public IEnumerable <DbColumnInfo> ReadMetadataFromTable() { IDbConnection dbConnection = Db.ConnectionFactory.Create(); return(dbConnection.Query <DbColumnInfo>(QueryTemplate.CreateMetaDataQuery())); }
/// <summary> /// Binds the query template to the specified adapters. /// </summary> /// <param name="inputAdapter">Input adapter metadata object to bind to all query template inputs.</param> /// <param name="outputAdapter">Input adapter metadata object to bind to the query template output.</param> /// <param name="queryTemplate">Query template to bind to adapters.</param> /// <returns>The query binder.</returns> private static QueryBinder BindQuery(InputAdapter inputAdapter, OutputAdapter outputAdapter, QueryTemplate queryTemplate) { // Create a query binder, wrapping the query template. QueryBinder queryBinder = new QueryBinder(queryTemplate); // Define the runtime configuration for both input adapters. var sensorInputConf = new TextFileReaderConfig { InputFileName = @"..\..\..\TrafficSensors.csv", Delimiter = ',', CtiFrequency = 9, CultureName = "en-US", InputFieldOrders = new Collection<string>() { "SensorId", "AverageSpeed", "VehicularCount" } }; var locationInputConf = new TextFileReaderConfig { InputFileName = @"..\..\..\TrafficSensorLocations.csv", Delimiter = ',', CtiFrequency = 100, CultureName = "en-US", InputFieldOrders = new Collection<string>() { "SensorId", "LocationId" } }; // Define the runtime configuration for the output adapter. // Specify an empty file name, which will just dump the output // events on the console. Also pass an event handle name to // synchronize the shutdown. var outputConf = new TextFileWriterConfig { OutputFileName = string.Empty, Delimiter = '\t' }; // Bind input adapters to query template's input streams, // applying runtime configuration. // In this example, the given input file for sensor input // contains interval events (each sensor reading has a start // and end time), while the location input is represented by // edge events (for each event, the end time is not known in // advance). queryBinder.BindProducer("sensorInput", inputAdapter, sensorInputConf, EventShape.Interval); queryBinder.BindProducer("locationInput", inputAdapter, locationInputConf, EventShape.Edge); // Bind output adapter to query, applying runtime // configuration. queryBinder.AddConsumer<TextFileWriterConfig>("queryresult", outputAdapter, outputConf, EventShape.Point, StreamEventOrder.FullyOrdered); return queryBinder; }
public virtual IList <E> ListEntity() { return(Db.List <E>(QueryTemplate.CreateListQuery(), null).ToList()); }
public object Any(QueryTemplate request) { return(new QueryResponseTemplate <Poco>()); }
public virtual async Task <IList <E> > ListEntityAsync() { var result = await Db.ListAsync <E>(QueryTemplate.CreateListQuery(), null); return(result.ToList()); }