Ejemplo n.º 1
0
        public QueryRoot HandleQuery(string db, string query, IDbManagement dbm)
        {
            var root = new QueryRoot();
            var result = new QueryResult();
            var serie = new QuerySerie();

            if (query.ToLower() == "show measurements")
            {
                serie.name = "measurements";
                serie.columns.Add("name");

                var myDb = dbm.GetDb(db);
                serie.values.AddRange(myDb.GetMeasurementNames().Select(i => new List<object> {i}));

                result.series.Add(serie);

                root.results.Add(result);
                return root;
            }
            var dbInstance = dbm.GetDb(db);
            var scriptingEngine = new ScriptingEngine(dbInstance, query);
            var res = scriptingEngine.Execute();

            foreach (var s in res.Result.Series.OrderByDescending(i => i.FullName))
            {
                QuerySerie querySerie = new QuerySerie();
                CreateSingleResult(querySerie, s, result);
            }

            root.results.Add(result);
            return root;
        }
Ejemplo n.º 2
0
        public App()
        {
            diContainer = BuildContainer();

            dbManagement = DbManagement.CreateAsSingleton();
            logger       = diContainer.Resolve <ILogger>();

            InitializeComponent();

            MainPage = new NavigationPage(new MainPage())
            {
                BarBackgroundColor = Color.LightGray,
                BarTextColor       = Color.Black
            };
        }
Ejemplo n.º 3
0
        public QueryRoot HandleQuery(string db, string query, IDbManagement dbm)
        {
            var root   = new QueryRoot();
            var result = new QueryResult();
            var serie  = new QuerySerie();

            if (query.ToLower().StartsWith("show measurements"))
            {
                serie.name = "measurements";
                serie.columns.Add("name");


                var myDb = dbm.GetDb(db);
                serie.values.AddRange(myDb.GetMeasurementNames().Select(i => new List <object> {
                    i
                }));

                result.series.Add(serie);

                root.results.Add(result);
                return(root);
            }
            var dbInstance = dbm.GetDb(db);

            var queries = query.Split(new[] { ";" }, StringSplitOptions.RemoveEmptyEntries);

            foreach (var subQuery in queries)
            {
                var scriptingEngine = new ScriptingEngine(dbInstance, subQuery);
                var res             = scriptingEngine.Execute();

                foreach (var s in res.Result.Series.OrderByDescending(i => i.FullName))
                {
                    QuerySerie querySerie = new QuerySerie();
                    CreateSingleResult(querySerie, s, result);
                }
            }

            root.results.Add(result);
            return(root);
        }
Ejemplo n.º 4
0
 public AppTests()
 {
     dbManagement = DbManagement.CreateAsSingleton();
 }