Ejemplo n.º 1
0
        internal Client(IDatabase db, Assembly assembly, TCursor debugInstance)
        {
            _csharpCompiler = new CSharpCompiler();
            _luaHandler     = new LuaHandler(db);
            _delegateReader = DelegateReader.CreateCachedWithDefaultAssemblyProvider();

            DebugInstance = debugInstance;
            Database      = db;
        }
Ejemplo n.º 2
0
 // Version using a delegate (for one-time mappers)
 public IEnumerable <T> Select <T>(String statement, DelegateReader <T> readMapper)
 {
     using (IDbCommand command = m_connection.CreateCommand())
     {
         command.CommandText = statement;
         using (IDataReader reader = command.ExecuteReader())
         {
             while (reader.Read())
             {
                 yield return(readMapper(reader));
             }
         }
     }
 }
 public void ShouldReturnTreeOfDelegateWithInternalComplexTypes_NotReferenced()
 {
     var reader = DelegateReader.CreateWithSetOfAssemblies(AssemblySet.Core, false, false);
     var tree   = reader.Read((MyDel2)(x =>
     {
         if (x.Value >= 0 && x.Value < 5)
         {
             return(1);
         }
         else if (x.Value >= 5 && x.Value < 10)
         {
             return(2);
         }
         return(3);
     }));
 }
        public void ShouldReturnTreeOfDelegateWithExternalComplexTypes()
        {
            var reader = DelegateReader.CreateWithDefaultAssemblyProvider();
            var tree   = reader.Read((MyDel3)(x =>
            {
                if (x.Value >= 0 && x.Value < 5)
                {
                    return(1);
                }
                else if (x.Value >= 5 && x.Value < 10)
                {
                    return(2);
                }
                return(3);
            }));

            tree.Should().NotBeNull();
            tree.FirstMethodOrDefault().Should().NotBeNull();
            tree.Warnings().Count.Should().Be(0);
        }
        public void ShouldReturnTreeOfSimpleDelegate()
        {
            var reader = DelegateReader.CreateWithDefaultAssemblyProvider();
            var tree   = reader.Read((MyDel1)(x =>
            {
                if (x >= 0 && x < 5)
                {
                    return(1);
                }
                else if (x >= 5 && x < 10)
                {
                    return(2);
                }
                return(3);
            }));

            tree.Should().NotBeNull();
            tree.FirstMethodOrDefault().Should().NotBeNull();
            tree.Warnings().Count.Should().Be(0);
        }
        public void ShouldReturnTreeOfDelegateWithInternalComplexTypes_NotReferenced_AddOnPrepare()
        {
            var reader = DelegateReader.CreateWithSetOfAssemblies(AssemblySet.Core, true, false);
            var tree   = reader.Read((MyDel2)(x =>
            {
                if (x.Value >= 0 && x.Value < 5)
                {
                    return(1);
                }
                else if (x.Value >= 5 && x.Value < 10)
                {
                    return(2);
                }
                return(3);
            }));

            tree.Should().NotBeNull();
            tree.FirstMethodOrDefault().Should().NotBeNull();
            tree.Warnings().Count.Should().Be(0);
        }
        public void ShouldReturnTreeOfDelegateWithExternalComplexTypes_Referenced()
        {
            var reader = DelegateReader.CreateWithSetOfAssemblies(GetCoreAssemblies().Concat(new[] { typeof(ExternalFoo).Assembly }).ToList(), false, false);
            var tree   = reader.Read((MyDel3)(x =>
            {
                if (x.Value >= 0 && x.Value < 5)
                {
                    return(1);
                }
                else if (x.Value >= 5 && x.Value < 10)
                {
                    return(2);
                }
                return(3);
            }));

            tree.Should().NotBeNull();
            tree.FirstMethodOrDefault().Should().NotBeNull();
            tree.Warnings().Count.Should().Be(0);
        }
Ejemplo n.º 8
0
        /*----------------------------------------------------------------------------
        *       %%Function: DoGenericQueryDelegateRead
        *       %%Qualified: UpcSvc.UpcSvc.DoGenericQueryDelegateRead<T>
        *       %%Contact: rlittle
        *
        *   Do a generic query and return the result for type T
        *  ----------------------------------------------------------------------------*/
        public static T DoGenericQueryDelegateRead <T>(string sQuery, DelegateReader <T> delegateReader, DelegateFromUSR <T> delegateFromUsr)
        {
            LocalSqlHolder lsh  = null;
            CorrelationID  crid = new CorrelationID();
            SR             sr   = SR.Failed("unknown");

            try
            {
                lsh = new LocalSqlHolder(null, crid, SqlConnectionStatic);
                string sCmd = sQuery;

                if (delegateReader == null)
                {
                    // just execute as a command
                    return(delegateFromUsr(USR.FromSR(TCore.Sql.ExecuteNonQuery(lsh, sCmd, SqlConnectionStatic))));
                }
                else
                {
                    SqlReader sqlr = new SqlReader(lsh);
                    try
                    {
                        sr = sqlr.ExecuteQuery(sQuery, SqlConnectionStatic);
                        sr.CorrelationID = crid;

                        if (sr.Succeeded)
                        {
                            T    t     = default(T);
                            bool fOnce = false;

                            while (sqlr.Reader.Read())
                            {
                                delegateReader(sqlr, crid, ref t);
                                fOnce = true;
                            }

                            if (!fOnce)
                            {
                                return(delegateFromUsr(USR.FromSR(SR.FailedCorrelate("scan code not found", crid))));
                            }

                            return(t);
                        }
                    }
                    catch (Exception e)
                    {
                        sqlr.Close();
                        return(delegateFromUsr(USR.FromSR(SR.FailedCorrelate(e, crid))));
                    }
                }
            }
            catch (Exception e)
            {
                return(delegateFromUsr(USR.FromSR(SR.FailedCorrelate(e, crid))));
            }
            finally
            {
                lsh?.Close();
            }

            {
                USR usr = USR.FromSR(sr);

                usr.Reason += $"( fExecuteQuery returned false) (static={SqlConnectionStatic})";

                return(delegateFromUsr(usr));
            }
        }
Ejemplo n.º 9
0
 public static void ClassSetup(TestContext ctx)
 {
     _delegateReader = DelegateReader.CreateWithDefaultAssemblyProvider();
     _csharpCompiler = new CSharpCompiler();
 }
Ejemplo n.º 10
0
 public static void ClassSetup(TestContext ctx)
 {
     _delegateReader = DelegateReader.CreateWithDefaultAssemblyProvider();
     _csharpCompiler = new CSharpCompiler();
     _csharpCompiler.MainResolver.AddResolver(typeof(Foo <>), typeof(FooProxy <>));
 }