Beispiel #1
0
        private List <String> BuildQuery()
        {
            List <String> builder = new List <String>();

            _parsers.ForEach((parser) =>
            {
                //Bring up the Parser
                Gale.REST.Queryable.Primitive.Parser _parser = (Gale.REST.Queryable.Primitive.Parser)(Activator.CreateInstance(parser.Type));
                _parser._SetBuilder(this);

                //Executing Parsing
                string parserFragment = _parser.Parse(parser.Configuration, _reflectedModel);

                //------------------------------------------
                ExecutedParserEventHandler handler = OnExecutedParser;
                if (handler != null)
                {
                    var e = new Gale.REST.Queryable.Primitive.ExecutedParserEventArgs(_parser, parserFragment);
                    handler(e);
                    if (e.Changed)
                    {
                        parserFragment = e.ResultQueryFragment;
                    }
                }
                //------------------------------------------

                builder.Add(parserFragment);
            });

            return(builder);
        }
 public ExecutedParserEventArgs(Gale.REST.Queryable.Primitive.Parser parser, String queryFragment)
 {
     this._parser = parser;
     this._resultQueryFragment = queryFragment;
 }
Beispiel #3
0
 public ExecutedParserEventArgs(Gale.REST.Queryable.Primitive.Parser parser, String queryFragment)
 {
     this._parser = parser;
     this._resultQueryFragment = queryFragment;
 }