Пример #1
0
        public virtual void TestSelectTrigger()
        {
            IOdb odb = null;

            DeleteBase("trigger.ndb");
            var myTrigger = new MySelectTrigger();

            try
            {
                odb = Open("trigger.ndb");
                var f1      = new VO.Login.Function("function1");
                var f2      = new VO.Login.Function("function2");
                var profile = new Profile("profile1", f1);
                var user    = new User("oli", "*****@*****.**", profile);
                odb.Store(user);
                odb.Store(f2);
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
            }
            odb = Open("trigger.ndb");
            odb.TriggerManagerFor <VO.Login.Function>().AddSelectTrigger(myTrigger);
            var query     = odb.Query <VO.Login.Function>();
            var functions = query.Execute <VO.Login.Function>();

            odb.Close();
            DeleteBase("trigger.ndb");
            AssertEquals(2, functions.Count);
            AssertEquals(2, myTrigger.nbCalls);
        }
Пример #2
0
        public virtual void Test2()
        {
            IOdb odb = null;

            DeleteBase("trigger.ndb");
            var myTrigger = new MyTrigger();

            try
            {
                odb = Open("trigger.ndb");
                odb.TriggerManagerFor <VO.Login.Function>().AddInsertTrigger(myTrigger);
                var f1      = new VO.Login.Function("function1");
                var f2      = new VO.Login.Function("function2");
                var profile = new Profile("profile1", f1);
                var user    = new User("oli", "*****@*****.**", profile);
                odb.Store(user);
                odb.Store(f2);
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
            }
            odb = Open("trigger.ndb");
            odb.Close();
            DeleteBase("trigger.ndb");
            AssertEquals(2, myTrigger.nbInsertsBefore);
            AssertEquals(2, myTrigger.nbInsertsAfter);
        }
        public virtual void Test1000Objects()
        {
            IOdb odb = null;

            DeleteBase(Base);
            try
            {
                odb = Open(Base);
                odb.TriggerManagerFor <ObjectWithAutoIncrementId>().AddInsertTrigger(new LocalAutoIncrementTrigger());
                for (var i = 0; i < 1000; i++)
                {
                    var o = new ObjectWithAutoIncrementId("Object " + (i + 1));
                    odb.Store(o);
                    AssertEquals(i + 1, o.GetId());
                }
                odb.Close();
                odb = Open(Base);
                odb.TriggerManagerFor <ObjectWithAutoIncrementId>().AddInsertTrigger(new LocalAutoIncrementTrigger());
                for (var i = 0; i < 1000; i++)
                {
                    var o = new ObjectWithAutoIncrementId("Object - bis - " + (i + 1));
                    odb.Store(o);
                    AssertEquals(1000 + i + 1, o.GetId());
                }
                odb.Close();
            }
            finally
            {
            }
        }
Пример #4
0
        /// <exception cref="System.Exception"></exception>
        public static User Popula(IOdb odb)
        {
            // cria perfil
            var profileAdmin = new Profile("administrador");

            odb.Store(profileAdmin);
            var profileOper = new Profile("operador");

            odb.Store(profileOper);
            // cria funcao
            CreateFunctionProfile(odb, profileAdmin, profileOper);
            // cria usuario
            var user = new User();

            user.SetCreationDate(new DateTime());
            user.SetDeleted(false);
            user.SetLastLogin(new DateTime());
            user.SetLogin("admin");
            user.SetName("Administrador");
            user.SetPassword("trocar");
            user.SetProfileId(profileAdmin);
            user.SetRejectedLogin(0);
            user.SetUpdateDate(new DateTime());
            user.SetStatus(true);
            user.SetSessionKey("123456");
            odb.Store(user);
            return(user);
        }
Пример #5
0
        public virtual void Test9()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            odb = Open(baseName);
            var f1 = new VO.Login.Function("function1");
            var f2 = new VO.Login.Function("function2");
            var f3 = new VO.Login.Function("function3");

            odb.Store(f1);
            odb.Store(f2);
            odb.Store(f3);
            var id = odb.GetObjectId(f3);

            odb.Close();
            odb = Open(baseName);
            var f3bis = (VO.Login.Function)odb.GetObjectFromId(id);

            odb.Delete(f3bis);
            odb.Close();
            odb = Open(baseName);
            odb.Store(new VO.Login.Function("last function"));
            odb.Close();
            odb = Open(baseName);
            var query = odb.Query <VO.Login.Function>();
            var l     = query.Execute <VO.Login.Function>();

            odb.Close();
            AssertEquals(3, l.Count);
        }
Пример #6
0
        public virtual void Test7()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            odb = Open(baseName);
            var f1 = new VO.Login.Function("function1");
            var f2 = new VO.Login.Function("function2");
            var f3 = new VO.Login.Function("function3");

            odb.Store(f1);
            odb.Store(f2);
            odb.Store(f3);
            var id = odb.GetObjectId(f3);

            odb.Close();
            try
            {
                odb = Open(baseName);
                var f3bis = (VO.Login.Function)odb.GetObjectFromId(id);
                odb.Delete(f3bis);
                odb.Close();
                odb = Open(baseName);
                var query = odb.Query <VO.Login.Function>();
                var l     = query.Execute <VO.Login.Function>();
                odb.Close();
                AssertEquals(2, l.Count);
            }
            catch (OdbRuntimeException)
            {
                odb.Close();
                DeleteBase(baseName);
            }
        }
        public virtual void Test2Objects()
        {
            IOdb odb = null;

            DeleteBase(Base);
            try
            {
                odb = Open(Base);
                odb.TriggerManagerFor <ObjectWithAutoIncrementId>().AddInsertTrigger(new LocalAutoIncrementTrigger());
                var o = new ObjectWithAutoIncrementId("Object 1");
                odb.Store(o);
                AssertEquals(1, o.GetId());
                odb.Close();
                odb = Open(Base);
                odb.TriggerManagerFor <ObjectWithAutoIncrementId>().AddInsertTrigger(new LocalAutoIncrementTrigger());
                o = new ObjectWithAutoIncrementId("Object 2");
                odb.Store(o);
                AssertEquals(2, o.GetId());
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
            }
        }
Пример #8
0
        public virtual void Test15_by_oid_2()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            DeleteBase(baseName);
            odb = Open(baseName);
            var f1   = new VO.Login.Function("function1");
            var f2   = new VO.Login.Function("function2");
            var oid1 = odb.Store(f1);
            var oid2 = odb.Store(f2);

            AssertEquals(2, odb.Query <VO.Login.Function>().Count());
            odb.Close();
            odb = Open(baseName);
            odb.DeleteObjectWithId(oid1);
            odb.DeleteObjectWithId(oid2);
            AssertEquals(0, odb.Query <VO.Login.Function>().Count());
            odb.Store(f1);
            odb.Store(f2);
            AssertEquals(2, odb.Query <VO.Login.Function>().Count());
            odb.Close();
            odb = Open(baseName);
            var query = odb.Query <VO.Login.Function>();

            AssertEquals(2, query.Execute <VO.Login.Function>().Count);
            odb.Close();
            DeleteBase(baseName);
        }
Пример #9
0
        public virtual void Test21()
        {
            IOdb odb      = null;
            var  baseName = GetBaseName();

            odb = Open(baseName);
            var f0 = new VO.Login.Function("function0");

            odb.Store(f0);
            odb.Close();
            odb = Open(baseName);
            var f1 = new VO.Login.Function("function1");

            odb.Store(f1);
            var f2 = new VO.Login.Function("function2");

            odb.Store(f2);
            odb.Delete(f1);
            odb.Close();
            odb = Open(baseName);
            var objects = odb.Query <VO.Login.Function>().Execute <VO.Login.Function>();

            AssertEquals(2, objects.Count);
            odb.Close();
        }
Пример #10
0
        public virtual void Test17()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            DeleteBase(baseName);
            odb = Open(baseName);
            var f1 = new VO.Login.Function("function1");
            var f2 = new VO.Login.Function("function2");
            var f3 = new VO.Login.Function("function2");

            odb.Store(f1);
            odb.Store(f2);
            odb.Store(f3);
            AssertEquals(3, odb.Query <VO.Login.Function>().Count());
            odb.Delete(f2);
            AssertEquals(2, odb.Query <VO.Login.Function>().Count());
            // odb.store(f1);
            odb.Store(f2);
            // odb.store(f3);
            AssertEquals(3, odb.Query <VO.Login.Function>().Count());
            odb.Close();
            odb = Open(baseName);
            var query = odb.Query <VO.Login.Function>();

            AssertEquals(3, query.Execute <VO.Login.Function>().Count);
            odb.Close();
            DeleteBase(baseName);
        }
Пример #11
0
        public virtual void Test16()
        {
            var  baseName = GetBaseName();
            var  size     = 10000;
            IOdb odb      = null;

            DeleteBase(baseName);
            odb = Open(baseName);
            var oids = new OID[size];

            for (var i = 0; i < size; i++)
            {
                oids[i] = odb.Store(new VO.Login.Function("function" + i));
            }
            AssertEquals(size, odb.Query <VO.Login.Function>().Count());
            for (var i = 0; i < size; i++)
            {
                odb.DeleteObjectWithId(oids[i]);
            }
            AssertEquals(0, odb.Query <VO.Login.Function>().Count());
            for (var i = 0; i < size; i++)
            {
                oids[i] = odb.Store(new VO.Login.Function("function" + i));
            }
            AssertEquals(size, odb.Query <VO.Login.Function>().Count());
            odb.Close();
            odb = Open(baseName);
            var query = odb.Query <VO.Login.Function>();

            AssertEquals(size, query.Execute <VO.Login.Function>().Count);
            odb.Close();
            DeleteBase(baseName);
        }
Пример #12
0
        public virtual void Test2()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;
            var  k        = 10;
            var  t1       = OdbTime.GetCurrentTimeInMs();
            var  fields   = new[] { "ok", "id", "name" };

            odb = Open(baseName);
            for (var i = 0; i < k; i++)
            {
                odb.Store(new User("john" + (k - i), "*****@*****.**", "ny 875", k - i + 1, new DateTime(t1 - i * 1000),
                                   i % 2 == 0));
                odb.Store(new User("john" + (k - i), "*****@*****.**", "ny 875", k - i, new DateTime(t1 - i * 1000),
                                   (i + 1) % 2 == 0));
            }
            odb.Close();
            odb = Open(baseName);
            var q = odb.Query <User>();

            q.Descend("ok").OrderAscending();
            q.Descend("id").OrderAscending();
            q.Descend("name").OrderAscending();
            var users = q.Execute <User>();

            odb.Close();
            if (k < 11)
            {
                //NDatabase.Tool.DisplayUtility.Display("test1", users);
            }
            var user = users.GetFirst();

            AssertTrue(user.GetName().StartsWith("john1"));
            AssertEquals(2, user.GetId());
        }
Пример #13
0
        public virtual void Test10()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            odb = Open(baseName);
            var  query = odb.Query <VO.Login.Function>();
            long size  = query.Execute <VO.Login.Function>().Count;
            var  f1    = new VO.Login.Function("function1");

            odb.Store(f1);
            odb.Close();
            odb = Open(baseName);
            var query1 = odb.Query <VO.Login.Function>();
            var f1bis  = query1.Execute <VO.Login.Function>().GetFirst();

            odb.Delete(f1bis);
            odb.Close();
            odb = Open(baseName);
            var query3 = odb.Query <VO.Login.Function>();

            AssertEquals(size, query3.Execute <VO.Login.Function>().Count);
            odb.Store(new VO.Login.Function("last function"));
            odb.Close();
            odb = Open(baseName);
            var query2 = odb.Query <VO.Login.Function>();
            var l      = query2.Execute <VO.Login.Function>();

            odb.Close();
            AssertEquals(size + 1, l.Count);
        }
Пример #14
0
        public virtual void Test20()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            odb = Open(baseName);
            var f0 = new VO.Login.Function("1function0");

            odb.Store(f0);
            odb.Close();
            odb = Open(baseName);
            var f1 = new VO.Login.Function("function1");

            odb.Store(f1);
            odb.Commit();
            var query = odb.Query <VO.Login.Function>();

            query.Descend("name").Constrain("func%").Like();
            var objects = query.Execute <VO.Login.Function>();

            AssertEquals(1, objects.Count);
            var f2  = objects.GetFirst();
            var oid = odb.GetObjectId(f2);

            odb.DeleteObjectWithId(oid);
            var query1 = odb.Query <VO.Login.Function>();

            AssertEquals(1, query1.Execute <VO.Login.Function>().Count);
            odb.Close();
            odb = Open(baseName);
            var query2 = odb.Query <VO.Login.Function>();

            objects = query2.Execute <VO.Login.Function>();
            AssertEquals(1, objects.Count);
        }
Пример #15
0
        public virtual void TestSelectUnCommitedObject()
        {
            IOdb odb = null;

            try
            {
                DeleteBase(BaseName);
                odb = Open(BaseName);
                for (var i = 0; i < 4; i++)
                {
                    odb.Store(new VO.Login.Function("function " + i));
                }
                odb.Close();
                // reopen the database
                odb = Open(BaseName);
                // stores a new function
                odb.Store(new VO.Login.Function("function uncommited"));
                var query     = odb.Query <VO.Login.Function>();
                var functions = query.Execute <VO.Login.Function>();
                AssertEquals(5, functions.Count);
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                    DeleteBase(BaseName);
                }
            }
        }
Пример #16
0
        public virtual void TestSelectUnCommitedObject3()
        {
            DeleteBase(BaseName);
            // Create instance
            var  sport = new Sport("volley-ball");
            IOdb odb   = null;

            try
            {
                // Open the database
                odb = Open(BaseName);
                // Store the object
                odb.Store(sport);
            }
            finally
            {
                if (odb != null)
                {
                    // Close the database
                    odb.Close();
                }
            }
            try
            {
                // Open the database
                odb = Open(BaseName);
                // Let's insert a tennis player
                var agassi = new Player("André Agassi", new DateTime(), new Sport("Tennis"));
                odb.Store(agassi);
                IQuery query = odb.Query <Player>();
                query.Descend("favoriteSport.name").Constrain((object)"volley-ball").Equal();
                var players = query.Execute <Player>();
                Println("\nStep 4 : Players of Voller-ball");
                var i = 1;
                // display each object
                while (players.HasNext())
                {
                    Println((i++) + "\t: " + players.Next());
                }
            }
            finally
            {
                if (odb != null)
                {
                    // Close the database
                    odb.Close();
                }
            }
            DeleteBase(BaseName);
        }
Пример #17
0
        public virtual void TestArray61()
        {
            IOdb odb  = null;
            var  size = 50;

            try
            {
                DeleteBase("array9.ndb");
                odb = Open("array9.ndb");
                var array = new int[size];
                for (var i = 0; i < size; i++)
                {
                    array[i] = i;
                }
                var owna = new ObjectWithNativeArrayOfInt("t1", array);
                odb.Store(owna);
                odb.Close();
                odb = Open("array9.ndb");
                var query = odb.Query <ObjectWithNativeArrayOfInt>();
                var l     = query.Execute <ObjectWithNativeArrayOfInt>();
                var owna2 = l.GetFirst();
                owna2.SetNumber(1, 78);
                odb.Store <ObjectWithNativeArrayOfInt>(owna2);
                odb.Close();
                odb = Open("array9.ndb");
                var query1 = odb.Query <ObjectWithNativeArrayOfInt>();
                l = query1.Execute <ObjectWithNativeArrayOfInt>();
                var o = l.GetFirst();
                AssertEquals((int)0, (int)o.GetNumber(0));
                AssertEquals((int)78, (int)o.GetNumber(1));
            }
            catch (Exception)
            {
                if (odb != null)
                {
                    odb.Rollback();
                    odb = null;
                }
                throw;
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
                DeleteBase("array9.ndb");
            }
        }
Пример #18
0
        public void CopyRegions(IOdb odb, NorthwindDataSet dataSet)
        {
            //Processing Regions
            LogMessage("Reading Regions...", false);
            var adapter1 = new RegionTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("Regions: " + row.RegionID.ToString() + " ...", false);

                var r = new Region {RegionID = row.RegionID, RegionDescription = row.RegionDescription};

                odb.Store(r);
                LogMessage("saved", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Region>().AddUniqueIndexOn("Region_RegionID_PK_index", Domain.Region.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Region>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Regions" + Environment.NewLine, true);
        }
Пример #19
0
        public virtual void Test10()
        {
            IOdb odb = null;

            try
            {
                var baseName = GetBaseName();
                DeleteBase(baseName);
                odb = Open(baseName);
                var ca = new ClassA();
                var cb = new ClassB(ca, "b");
                ca.SetClassb(cb);
                ca.SetName("a");
                odb.Store(ca);
                var ci = ((global::NDatabase.Odb)odb).GetStorageEngine().GetSession().GetMetaModel().GetClassInfo(typeof(ClassA), true);
                AssertTrue(ci.HasCyclicReference());
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
            }
        }
Пример #20
0
        public virtual void TestDatePersistence()
        {
            IOdb odb = null;

            DeleteBase("date.ndb");
            try
            {
                odb = Open("date.ndb");
                var tc1 = new TestClass();
                tc1.SetDate1(new DateTime());
                long t1 = tc1.GetDate1().Millisecond;
                odb.Store(tc1);
                odb.Close();
                odb = Open("date.ndb");
                var query = odb.Query <TestClass>();
                var l     = query.Execute <TestClass>();
                AssertEquals(1, l.Count);
                var tc2 = l.GetFirst();
                AssertEquals(t1, (long)tc2.GetDate1().Millisecond);
                AssertEquals(tc1.GetDate1(), tc2.GetDate1());
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
            }
            DeleteBase("date.ndb");
        }
        private void CopyEmployeeTerritories(IOdb odb)
        {
            //Processing EmployeeTerritories
            LogMessage("Reading EmployeeTerritories...", false);
            var adapter1 = new EmployeeTerritoriesTableAdapter();
            var table1   = adapter1.GetData();

            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("EmployeeTerritories: " + row.EmployeeID.ToString() + "/" + row.TerritoryID + " ...", false);

                var et = new EmployeeTerritory();
                LogMessage("linking members...", false);
                et.Employee  = NDbUtil.GetByNumericalID <Employee>(odb, Employee.PK, row.EmployeeID);
                et.Territory = NDbUtil.GetByStringID <Territory>(odb, Territory.PK, row.TerritoryID);

                odb.Store(et);
                LogMessage("saved (" + et.Employee.EmployeeID.ToString() + "/" + et.Territory.TerritoryID + ")",
                           true);
            }
            odb.Commit();

            long objectCount = NDbUtil.GetAllInstances <EmployeeTerritory>(odb).Count;

            if (table1.Count == objectCount)
            {
                LogMessage(table1.Count + " objects saved", true);
            }
            else
            {
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            }
            LogMessage("Done with EmployeeTerritories" + Environment.NewLine, true);
        }
        private void CopyCustomerCustomerDemo(IOdb odb)
        {
            //Processing CustomerCustomerDemo
            LogMessage("Reading CustomerCustomerDemo...", false);
            var adapter1 = new CustomerCustomerDemoTableAdapter();
            var table1   = adapter1.GetData();

            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("CustomerCustomerDemo: " + row.CustomerID + "/" + row.CustomerTypeID + " ...", false);

                var ccd = new CustomerCustomerDemo();
                LogMessage("linking members...", false);
                ccd.CustomerID     = NDbUtil.GetByStringID <Customer>(odb, Customer.PK, row.CustomerID);
                ccd.CustomerTypeID = NDbUtil.GetByStringID <CustomerDemographics>(odb, CustomerDemographics.PK,
                                                                                  row.CustomerTypeID);

                odb.Store(ccd);
                LogMessage("saved (" + ccd.CustomerID.CustomerID + "/" + ccd.CustomerTypeID.CustomerTypeID + ")", true);
            }
            odb.Commit();

            long objectCount = NDbUtil.GetAllInstances <CustomerCustomerDemo>(odb).Count;

            if (table1.Count == objectCount)
            {
                LogMessage(table1.Count + " objects saved", true);
            }
            else
            {
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            }
            LogMessage("Done with CustomerCustomerDemo" + Environment.NewLine, true);
        }
Пример #23
0
        public virtual void TestStringPersistence()
        {
            IOdb odb = null;

            DeleteBase("date.ndb");
            try
            {
                odb = Open("date.ndb");
                var tc1 = new TestClass();
                tc1.SetString1(string.Empty);
                odb.Store(tc1);
                odb.Close();
                odb = Open("date.ndb");
                var query = odb.Query <TestClass>();
                var l     = query.Execute <TestClass>();
                AssertEquals(1, l.Count);
                var tc2 = l.GetFirst();
                AssertEquals(string.Empty, (string)tc2.GetString1());
                AssertEquals(0m, tc2.GetBigDecimal1());
                AssertEquals(0d, tc2.GetDouble1());
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
            }
        }
Пример #24
0
        public virtual void Test1()
        {
            IOdb odb      = null;
            var  baseName = GetBaseName();

            DeleteBase(baseName);
            var myTrigger = new MyTriggerBefore();

            try
            {
                odb = Open(baseName);
                odb.TriggerManagerFor <SimpleObject>().AddInsertTrigger(myTrigger);
                var so  = new SimpleObject(5);
                var oid = odb.Store(so);
                AssertEquals(6, so.GetId());
                odb.Close();
                odb = Open(baseName);
                var so2 = (SimpleObject)odb.GetObjectFromId(oid);
                AssertEquals(6, so2.GetId());
            }
            finally
            {
                if (odb != null)
                {
                    odb.Close();
                }
            }
            DeleteBase(baseName);
        }
Пример #25
0
        public void test4()
        {
            try
            {
                int    size = 1000;
                string file = "Test.NDatabase";
                Console.WriteLine("Oi");
                OdbFactory.Delete(file);
                IOdb odb = OdbFactory.Open(file);
                for (int i = 0; i < size; i++)
                {
                    OID oid = odb.Store(new Function("function " + i));
                }
                odb.Close();

                odb = OdbFactory.Open(file);
                var query = odb.Query <Function>();

                query.Descend("name").Constrain((object)"function 199").Equal();

                var functions = query.Execute <Function>();
                Console.WriteLine(" Number of functions = " + functions.Count);

                odb.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
            Console.ReadLine();
        }
Пример #26
0
        public virtual void Test19()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            odb = Open(baseName);
            var f1 = new VO.Login.Function("function1");

            odb.Store(f1);
            odb.Close();
            odb = Open(baseName);
            var query   = odb.Query <VO.Login.Function>();
            var objects = query.Execute <VO.Login.Function>();

            AssertEquals(1, objects.Count);
            var f2  = objects.GetFirst();
            var oid = odb.GetObjectId(f2);

            odb.DeleteObjectWithId(oid);
            var query1 = odb.Query <VO.Login.Function>();

            AssertEquals(0, query1.Execute <VO.Login.Function>().Count);
            odb.Close();
            odb = Open(baseName);
            var query2 = odb.Query <VO.Login.Function>();

            objects = query2.Execute <VO.Login.Function>();
            AssertEquals(0, objects.Count);
        }
Пример #27
0
        public virtual void Test1()
        {
            IOdb odb = null;

            try
            {
                DeleteBase("mydb.ndb");
                // Open the database
                odb = Open("mydb.ndb");
                var t0       = OdbTime.GetCurrentTimeInTicks();
                var nRecords = 10000;
                for (var i = 0; i < nRecords; i++)
                {
                    var ao = new Class1(189, "csdcsdc");
                    odb.Store(ao);
                }
                odb.Close();
                var t1 = OdbTime.GetCurrentTimeInTicks();
                odb = Open("mydb.ndb");
                var query = odb.Query <Class1>();
                var ssss  = query.Execute <Class1>();
                var t2    = OdbTime.GetCurrentTimeInTicks();
                Println("Elapsed time for inserting " + nRecords + " records: " + (t1 - t0) + " / select = " + (t2 - t1));
            }
            finally
            {
                if (odb != null)
                {
                    // Close the database
                    odb.Close();
                }
            }
        }
Пример #28
0
        public void test1()
        {
            try
            {
                string file = "Test.NDatabase";
                OdbFactory.Delete(file);
                IOdb odb = OdbFactory.Open(file);
                OID  oid = odb.Store(new Function("f1"));
                odb.Close();
                Console.WriteLine("Write Done!");

                odb = OdbFactory.Open(file);
                var query = odb.Query <Function>();
                IObjectSet <Function> functions = query.Execute <Function>();
                Console.WriteLine(" Number of functions = " + functions.Count);
                Function f = (Function)odb.GetObjectFromId(oid);
                Console.WriteLine(f.ToString());
                odb.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
            Console.ReadLine();
        }
        public virtual void Test2()
        {
            DeleteBase("map-with-collections");
            IOdb odb = null;

            odb = Open("map-with-collections");
            var o = new MyMapObject("test");
            IList <MyMapObject> c = new List <MyMapObject>();

            c.Add(o);
            o.GetMap().Add("c", c);
            odb.Store(o);
            odb.Close();
            odb = Open("map-with-collections");
            var query = odb.Query <MyMapObject>();
            var os    = query.Execute <MyMapObject>();
            var mmo   = os.GetFirst();

            odb.Close();
            DeleteBase("map-with-collections");
            AssertEquals(o.GetName(), mmo.GetName());
            AssertEquals(o.GetMap().Count, mmo.GetMap().Count);
            var c1 = (ICollection)o.GetMap()["c"];
            var c2 = (ICollection)mmo.GetMap()["c"];

            AssertEquals(c1.Count, c2.Count);
            var enumerator = c2.GetEnumerator();

            enumerator.MoveNext();
            AssertEquals(mmo, enumerator.Current);
        }
Пример #30
0
        public virtual void Test13()
        {
            var  baseName = GetBaseName();
            IOdb odb      = null;

            DeleteBase(baseName);
            odb = Open(baseName);
            var f1 = new VO.Login.Function("function1");
            var f2 = new VO.Login.Function("function2");
            var f3 = new VO.Login.Function("function3");

            odb.Store(f1);
            odb.Store(f2);
            odb.Store(f3);
            var idf1          = odb.GetObjectId(f1);
            var idf2          = odb.GetObjectId(f2);
            var idf3          = odb.GetObjectId(f3);
            var storageEngine = ((global::NDatabase.Odb)odb).GetStorageEngine();

            var p1 = storageEngine.GetObjectReader().GetObjectPositionFromItsOid(idf1, true, false);
            var p2 = storageEngine.GetObjectReader().GetObjectPositionFromItsOid(idf2, true, false);
            var p3 = storageEngine.GetObjectReader().GetObjectPositionFromItsOid(idf3, true, false);

            odb.Close();
            try
            {
                odb = Open(baseName);
                f1  = (VO.Login.Function)odb.GetObjectFromId(idf1);
                f2  = (VO.Login.Function)odb.GetObjectFromId(idf2);
                f3  = (VO.Login.Function)odb.GetObjectFromId(idf3);
                odb.Delete(f3);
                odb.Delete(f2);
                odb.Close();
                odb = Open(baseName);
                var query = odb.Query <VO.Login.Function>();
                var l     = query.Execute <VO.Login.Function>();
                odb.Close();
                AssertEquals(1, l.Count);
            }
            catch (OdbRuntimeException)
            {
                DeleteBase(baseName);
                throw;
            }
            DeleteBase(baseName);
        }
Пример #31
0
        public virtual void TestArray6UpdateIncreasingArraySize()
        {
            IOdb odb  = null;
            var  size = 50;

            try
            {
                DeleteBase("array10.ndb");
                odb = Open("array10.ndb");
                var array  = new Decimal[size];
                var array2 = new Decimal[size + 1];
                for (var i = 0; i < size; i++)
                {
                    array[i]  = new Decimal(((double)i) * 78954545 / 89);
                    array2[i] = new Decimal(((double)i) * 78954545 / 89);
                }
                array2[size] = new Decimal(100);
                var owna = new ObjectWithNativeArrayOfBigDecimal("t1", array);
                odb.Store(owna);
                odb.Close();
                odb = Open("array10.ndb");
                var query = odb.Query <ObjectWithNativeArrayOfBigDecimal>();
                var l     = query.Execute <ObjectWithNativeArrayOfBigDecimal>();
                var owna2 = l.GetFirst();
                owna2.SetNumbers(array2);
                odb.Store <ObjectWithNativeArrayOfBigDecimal>(owna2);
                odb.Close();
                odb = Open("array10.ndb");
                var query1 = odb.Query <ObjectWithNativeArrayOfBigDecimal>();
                l = query1.Execute <ObjectWithNativeArrayOfBigDecimal>();
                var o = l.GetFirst();
                AssertEquals(size + 1, (int)o.GetNumbers().Length);
                AssertEquals(new Decimal(100), o.GetNumber(size));
                AssertEquals((object)owna2.GetNumber(1), (object)o.GetNumber(1));
                odb.Close();
                DeleteBase("array10.ndb");
            }
            catch (Exception)
            {
                if (odb != null)
                {
                    odb.Rollback();
                }
                throw;
            }
        }
Пример #32
0
        private void CopyCustomerDemographics(IOdb odb)
        {
            //Processing CustomerDemographics
            LogMessage("Reading CustomerDemographics...", false);
            var adapter1 = new CustomerDemographicsTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("CustomerDemographics: " + row.CustomerTypeID + " ...", false);

                var cd = new CustomerDemographics
                             {
                                 CustomerTypeID = row.CustomerTypeID,
                                 CustomerDesc = row.IsCustomerDescNull() ? null : row.CustomerDesc
                             };

                odb.Store(cd);
                LogMessage("saved", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<CustomerDemographics>().AddUniqueIndexOn(
                "CustomerDemographics_CustomerTypeID_PK_index", CustomerDemographics.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<CustomerDemographics>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with CustomerDemographics" + Environment.NewLine, true);
        }
Пример #33
0
        private void CopyEmployees(IOdb odb)
        {
            var employees = new List<Employee>();
            var reportingEmployees = new Hashtable();
            //Processing Employees
            LogMessage("Reading Employees...", false);
            var adapter1 = new EmployeesTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                var e = new Employee
                            {
                                EmployeeID = row.EmployeeID,
                                FirstName = row.FirstName,
                                LastName = row.LastName,
                                Title = row.IsTitleNull() ? null : row.Title,
                                TitleOfCourtesy = row.IsTitleOfCourtesyNull() ? null : row.TitleOfCourtesy,
                                Address = row.IsAddressNull() ? null : row.Address,
                                City = row.IsCityNull() ? null : row.City,
                                Region = row.IsRegionNull() ? null : row.Region,
                                PostalCode = row.IsPostalCodeNull() ? null : row.PostalCode,
                                Country = row.IsCountryNull() ? null : row.Country,
                                HomePhone = row.IsHomePhoneNull() ? null : row.HomePhone,
                                Extension = row.IsExtensionNull() ? null : row.Extension,
                                Notes = row.IsNotesNull() ? null : row.Notes,
                                Photo = row.IsPhotoNull() ? null : row.Photo,
                                PhotoPath = row.IsPhotoPathNull() ? null : row.PhotoPath
                            };

                if (!row.IsBirthDateNull())
                    e.BirthDate = row.BirthDate;
                if (!row.IsHireDateNull())
                    e.HireDate = row.HireDate;
                if (!row.IsReportsToNull())
                    reportingEmployees.Add(e.EmployeeID, row.ReportsTo);

                employees.Add(e);
            }
            foreach (var e in employees)
            {
                LogMessage("Employee: " + e.EmployeeID.ToString() + " ...", false);
                if (reportingEmployees.ContainsKey(e.EmployeeID))
                {
                    LogMessage("linking member...", false);
                    var reportsToID = Convert.ToInt64(reportingEmployees[e.EmployeeID]);
                    var found = employees.Find(p => p.EmployeeID == reportsToID);
                    e.ReportsTo = found;
                }
                odb.Store(e);
                LogMessage("saved (" + e.EmployeeID.ToString() + ")", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Employee>().AddUniqueIndexOn("Employee_EmployeeID_PK_index", Employee.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Employee>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Employees" + Environment.NewLine, true);
        }
Пример #34
0
        private void CopyEmployeeTerritories(IOdb odb)
        {
            //Processing EmployeeTerritories
            LogMessage("Reading EmployeeTerritories...", false);
            var adapter1 = new EmployeeTerritoriesTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("EmployeeTerritories: " + row.EmployeeID.ToString() + "/" + row.TerritoryID + " ...", false);

                var et = new EmployeeTerritory();
                LogMessage("linking members...", false);
                et.Employee = NDbUtil.GetByNumericalID<Employee>(odb, Employee.PK, row.EmployeeID);
                et.Territory = NDbUtil.GetByStringID<Territory>(odb, Territory.PK, row.TerritoryID);

                odb.Store(et);
                LogMessage("saved (" + et.Employee.EmployeeID.ToString() + "/" + et.Territory.TerritoryID + ")",
                           true);
            }
            odb.Commit();

            long objectCount = NDbUtil.GetAllInstances<EmployeeTerritory>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with EmployeeTerritories" + Environment.NewLine, true);
        }
Пример #35
0
        private void CopyOrderDetails(IOdb odb, ref double progress)
        {
            //Processing OrderDetails
            LogMessage("Reading OrderDetails...", false);
            var adapter1 = new Order_DetailsTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("OrderDetails: " + row.OrderID.ToString() + "/" + row.ProductID.ToString() + " ...", false);

                var od = new OrderDetail();
                LogMessage("linking members...", false);
                od.Order = NDbUtil.GetByNumericalID<Order>(odb, Order.PK, row.OrderID);
                od.Product = NDbUtil.GetByNumericalID<Product>(odb, Product.PK, row.ProductID);
                od.UnitPrice = Convert.ToDouble(row.UnitPrice);
                od.Quantity = row.Quantity;
                od.Discount = Convert.ToDouble(row.Discount);

                odb.Store(od);
                StepFinished(progress += 0.029);
                LogMessage("saved (" + od.Order.OrderID.ToString() + "/" + od.Product.ProductID.ToString() + ")",
                           true);
            }
            odb.Commit();

            long objectCount = NDbUtil.GetAllInstances<OrderDetail>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with OrderDetails" + Environment.NewLine, true);
        }
Пример #36
0
 /// <exception cref="System.Exception"></exception>
 public static void CreateFunctionProfile(IOdb odb, Profile admin, Profile oper)
 {
     var function = new Functions();
     function.SetDescription("Inclus√£o de usu√£rio");
     function.SetName("incluiUsuario");
     function.SetNameUrl("usuario.do/criar");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Edi√£√£o de Usu√£rio");
     function.SetName("editaUsuario");
     function.SetNameUrl("usuario.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Exclus√£o de Usu√£rio");
     function.SetName("excluiUsuario");
     function.SetNameUrl("usuario.do/excluir");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Consulta de Usu√£rios");
     function.SetName("listaUsuario");
     function.SetNameUrl("usuario.do/visualizar");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do usu√£rio");
     function.SetName("usuario");
     function.SetNameUrl("consultaUsuario.do/editar");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do usu√£rio");
     function.SetName("usuario");
     function.SetNameUrl("consultaUsuario.do/excluir");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do usu√£rio");
     function.SetName("usuario");
     function.SetNameUrl("consultaUsuario.do/visualizar");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller da senha");
     function.SetName("alteraSenha");
     function.SetNameUrl("alteraSenha.do/editar");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller da senha");
     function.SetName("alteraSenha");
     function.SetNameUrl("alteraSenha.do");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Altera√£√£o de Senha de outros");
     function.SetName("alteraSenhaOutros");
     function.SetNameUrl("alteraSenhaOutros.do/editar");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Altera√£√£o de Senha de outros");
     function.SetName("alteraSenhaOutros");
     function.SetNameUrl("alteraSenhaOutros.do");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("P√£gina Principal");
     function.SetName("main");
     function.SetNameUrl("main.jsp");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("P√£gina Sobre");
     function.SetName("main_sobre");
     function.SetNameUrl("main_sobre.jsp");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Inclus√£o de PMV");
     function.SetName("incluiPmv");
     function.SetNameUrl("pmv.do/create");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Edi√£√£o de PMV");
     function.SetName("editaPmv");
     function.SetNameUrl("pmv.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Exclus√£o de Pmv");
     function.SetName("excluiPmv");
     function.SetNameUrl("pmv.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Consulta de PMV");
     function.SetName("listaPmv");
     function.SetNameUrl("pmv.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do PMV");
     function.SetName("PMV");
     function.SetNameUrl("searchPmv.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do PMV");
     function.SetName("PMV");
     function.SetNameUrl("searchPmv.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do PMV");
     function.SetName("PMV");
     function.SetNameUrl("searchPmv.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Inclus√£o de Fornecedor");
     function.SetName("incluiFornecedor");
     function.SetNameUrl("constructor.do/create");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Edi√£√£o de Fornecedor");
     function.SetName("editaFornecedor");
     function.SetNameUrl("constructor.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Exclus√£o de Fornecedor");
     function.SetName("excluiFornecedor");
     function.SetNameUrl("constructor.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Consulta de Fornecedor");
     function.SetName("listaFornecedor");
     function.SetNameUrl("constructor.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Fornecedor");
     function.SetName("Fornecedor");
     function.SetNameUrl("searchConstructor.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Fornecedor");
     function.SetName("Fornecedor");
     function.SetNameUrl("searchConstructor.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Fornecedor");
     function.SetName("Fornecedor");
     function.SetNameUrl("searchConstructor.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Inclus√£o de AT");
     function.SetName("incluiAT");
     function.SetNameUrl("at.do/create");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Edi√£√£o de AT");
     function.SetName("editaAT");
     function.SetNameUrl("at.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Exclus√£o de AT");
     function.SetName("excluiAT");
     function.SetNameUrl("at.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Consulta de AT");
     function.SetName("listaAT");
     function.SetNameUrl("at.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do AT");
     function.SetName("AT");
     function.SetNameUrl("searchAt.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do AT");
     function.SetName("AT");
     function.SetNameUrl("searchAt.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do AT");
     function.SetName("AT");
     function.SetNameUrl("searchAt.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Inclus√£o de Sensor AT");
     function.SetName("incluiSensorAT");
     function.SetNameUrl("sensorAt.do/create");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Edi√£√£o de Sensor AT");
     function.SetName("editaSensorAT");
     function.SetNameUrl("sensorAt.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Exclus√£o de Sensor AT");
     function.SetName("excluiSensorAT");
     function.SetNameUrl("sensorAt.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Consulta de Sensor AT");
     function.SetName("listaSensorAT");
     function.SetNameUrl("sensorAt.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Sensor AT");
     function.SetName("SensorAT");
     function.SetNameUrl("searchSensorAt.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Sensor AT");
     function.SetName("SensorAT");
     function.SetNameUrl("searchSensorAt.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Sensor AT");
     function.SetName("SensorAT");
     function.SetNameUrl("searchSensorAt.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Inclus√£o de Meteo");
     function.SetName("incluiMeteo");
     function.SetNameUrl("meteo.do/create");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Edi√£√£o de Meteo");
     function.SetName("editaMeteo");
     function.SetNameUrl("meteo.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Exclus√£o de Meteo");
     function.SetName("excluiMeteo");
     function.SetNameUrl("meteo.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Consulta de Meteo");
     function.SetName("listaMeteo");
     function.SetNameUrl("meteo.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Meteo");
     function.SetName("Meteo");
     function.SetNameUrl("searchMeteo.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Meteo");
     function.SetName("Meteo");
     function.SetNameUrl("searchMeteo.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Meteo");
     function.SetName("Meteo");
     function.SetNameUrl("searchMeteo.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Inclus√£o de Sensor Meteo");
     function.SetName("incluiSensorMeteo");
     function.SetNameUrl("sensorMeteo.do/create");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Edi√£√£o de Sensor Meteo");
     function.SetName("editaSensorMeteo");
     function.SetNameUrl("sensorMeteo.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Exclus√£o de Sensor Meteo");
     function.SetName("excluiSensorMeteo");
     function.SetNameUrl("sensorMeteo.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Consulta de Sensor Meteo");
     function.SetName("listaSensorMeteo");
     function.SetNameUrl("sensorMeteo.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Sensor Meteo");
     function.SetName("SensorMeteo");
     function.SetNameUrl("searchSensorMeteo.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Sensor Meteo");
     function.SetName("SensorMeteo");
     function.SetNameUrl("searchSensorMeteo.do/delete");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Sensor Meteo");
     function.SetName("SensorMeteo");
     function.SetNameUrl("searchSensorMeteo.do/view");
     function.AddProfile(admin);
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do PmvMessage");
     function.SetName("sendPmvMessage");
     function.SetNameUrl("sendMessagePmv.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do ActiveConf");
     function.SetName("activeConf");
     function.SetNameUrl("activeConf.do/edit");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Monitor");
     function.SetName("monitor");
     function.SetNameUrl("monitor.do/view");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller do Monitor");
     function.SetName("monitor");
     function.SetNameUrl("monitor.do/view");
     function.AddProfile(oper);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller da Consulta Mensage");
     function.SetName("searchMessagePMV");
     function.SetNameUrl("searchMessagePmv.do/view");
     function.AddProfile(admin);
     odb.Store(function);
     function = new Functions();
     function.SetDescription("Controller da Consulta Mensage");
     function.SetName("searchMessagePMV");
     function.SetNameUrl("searchMessagePmv.do/view");
     function.AddProfile(oper);
     odb.Store(function);
 }
Пример #37
0
        private void CopyShippers(IOdb odb)
        {
            //Processing Shippers
            LogMessage("Reading Shippers...", false);
            var adapter1 = new ShippersTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("Shippers: " + row.ShipperID.ToString() + " ...", false);

                var s = new Shipper
                            {
                                ShipperID = row.ShipperID,
                                CompanyName = row.CompanyName,
                                Phone = row.IsPhoneNull() ? null : row.Phone
                            };

                odb.Store(s);
                LogMessage("saved", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Shipper>().AddUniqueIndexOn("Shipper_ShipperID_PK_index", Shipper.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Shipper>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Shippers" + Environment.NewLine, true);
        }
Пример #38
0
        private void CopyTerritories(IOdb odb)
        {
            //Processing Territories
            LogMessage("Reading Territories...", false);
            var adapter1 = new TerritoriesTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("Territories: " + row.TerritoryID + " ...", false);

                var t = new Territory {TerritoryID = row.TerritoryID, TerritoryDescription = row.TerritoryDescription};

                LogMessage("linking member...", false);
                t.Region = NDbUtil.GetByNumericalID<Region>(odb, Domain.Region.PK, row.RegionID);

                odb.Store(t);
                LogMessage("saved (" + t.TerritoryID + ")", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Territory>().AddUniqueIndexOn("Territory_TerritoryID_PK_index", Territory.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Territory>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Territories" + Environment.NewLine, true);
        }
Пример #39
0
 /// <exception cref="System.Exception"></exception>
 public static User Popula(IOdb odb)
 {
     // cria perfil
     var profileAdmin = new Profile("administrador");
     odb.Store(profileAdmin);
     var profileOper = new Profile("operador");
     odb.Store(profileOper);
     // cria funcao
     CreateFunctionProfile(odb, profileAdmin, profileOper);
     // cria usuario
     var user = new User();
     user.SetCreationDate(new DateTime());
     user.SetDeleted(false);
     user.SetLastLogin(new DateTime());
     user.SetLogin("admin");
     user.SetName("Administrador");
     user.SetPassword("trocar");
     user.SetProfileId(profileAdmin);
     user.SetRejectedLogin(0);
     user.SetUpdateDate(new DateTime());
     user.SetStatus(true);
     user.SetSessionKey("123456");
     odb.Store(user);
     return user;
 }
Пример #40
0
        private void CopyCustomerCustomerDemo(IOdb odb)
        {
            //Processing CustomerCustomerDemo
            LogMessage("Reading CustomerCustomerDemo...", false);
            var adapter1 = new CustomerCustomerDemoTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("CustomerCustomerDemo: " + row.CustomerID + "/" + row.CustomerTypeID + " ...", false);

                var ccd = new CustomerCustomerDemo();
                LogMessage("linking members...", false);
                ccd.CustomerID = NDbUtil.GetByStringID<Customer>(odb, Customer.PK, row.CustomerID);
                ccd.CustomerTypeID = NDbUtil.GetByStringID<CustomerDemographics>(odb, CustomerDemographics.PK,
                                                                                 row.CustomerTypeID);

                odb.Store(ccd);
                LogMessage("saved (" + ccd.CustomerID.CustomerID + "/" + ccd.CustomerTypeID.CustomerTypeID + ")", true);
            }
            odb.Commit();

            long objectCount = NDbUtil.GetAllInstances<CustomerCustomerDemo>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with CustomerCustomerDemo" + Environment.NewLine, true);
        }
Пример #41
0
        private void CopyProducts(IOdb odb)
        {
            var products = new List<Product>();
            var suppliers = new Hashtable();
            var categories = new Hashtable();
            //Processing Products
            LogMessage("Reading Products...", false);
            var adapter1 = new ProductsTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                var p = new Product
                            {
                                ProductID = row.ProductID,
                                ProductName = row.ProductName,
                                QuantityPerUnit = row.IsQuantityPerUnitNull() ? null : row.QuantityPerUnit,
                                UnitPrice = row.IsUnitPriceNull() ? 0 : Convert.ToDouble(row.UnitPrice),
                                UnitsInStock = row.IsUnitsInStockNull() ? 0 : row.UnitsInStock,
                                UnitsOnOrder = row.IsUnitsOnOrderNull() ? 0 : row.UnitsOnOrder,
                                ReorderLevel = row.IsReorderLevelNull() ? 0 : row.ReorderLevel,
                                Discontinued = row.Discontinued
                            };

                if (!row.IsSupplierIDNull())
                    suppliers.Add(p.ProductID, row.SupplierID);
                if (!row.IsCategoryIDNull())
                    categories.Add(p.ProductID, row.CategoryID);

                products.Add(p);
            }
            foreach (var p in products)
            {
                LogMessage("Product: " + p.ProductID.ToString() + " ...", false);
                if (suppliers.ContainsKey(p.ProductID))
                {
                    LogMessage("linking member...", false);
                    var supplierID = Convert.ToInt64(suppliers[p.ProductID]);
                    var found = NDbUtil.GetByNumericalID<Supplier>(odb, Supplier.PK, supplierID);
                    p.Supplier = found;
                }
                if (categories.ContainsKey(p.ProductID))
                {
                    LogMessage("linking member...", false);
                    var categoryID = Convert.ToInt64(categories[p.ProductID]);
                    var found = NDbUtil.GetByNumericalID<Category>(odb, Category.PK, categoryID);
                    p.Category = found;
                }
                odb.Store(p);

                LogMessage("saved (" + p.ProductID.ToString() + ")", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Product>().AddUniqueIndexOn("Product_ProductID_PK_index", Product.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Product>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Products" + Environment.NewLine, true);
        }
Пример #42
0
        private void CopyOrders(IOdb odb, ref double progress)
        {
            var orders = new List<Order>();
            var customers = new Hashtable();
            var employees = new Hashtable();
            var shippers = new Hashtable();
            //Processing Orders
            LogMessage("Reading Orders...", false);
            var adapter1 = new OrdersTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                var o = new Order
                            {
                                OrderID = row.OrderID,
                                Freight = row.IsFreightNull() ? 0 : Convert.ToDouble(row.Freight),
                                ShipName = row.IsShipNameNull() ? null : row.ShipName,
                                ShipAddress = row.IsShipAddressNull() ? null : row.ShipAddress,
                                ShipCity = row.IsShipCityNull() ? null : row.ShipCity,
                                ShipRegion = row.IsShipRegionNull() ? null : row.ShipRegion,
                                ShipPostalCode = row.IsShipPostalCodeNull() ? null : row.ShipPostalCode,
                                ShipCountry = row.IsShipCountryNull() ? null : row.ShipCountry
                            };

                if (!row.IsCustomerIDNull())
                    customers.Add(o.OrderID, row.CustomerID);
                if (!row.IsEmployeeIDNull())
                    employees.Add(o.OrderID, row.EmployeeID);
                if (!row.IsShipViaNull())
                    shippers.Add(o.OrderID, row.ShipVia);
                if (!row.IsOrderDateNull())
                    o.OrderDate = row.OrderDate;
                if (!row.IsRequiredDateNull())
                    o.RequiredDate = row.RequiredDate;
                if (!row.IsShippedDateNull())
                    o.ShippedDate = row.ShippedDate;

                orders.Add(o);
            }
            foreach (var o in orders)
            {
                LogMessage("Order: " + o.OrderID.ToString() + " ...", false);
                if (customers.ContainsKey(o.OrderID))
                {
                    LogMessage("linking member...", false);
                    var customerID = Convert.ToString(customers[o.OrderID]);
                    var found = NDbUtil.GetByStringID<Customer>(odb, Customer.PK, customerID);
                    o.Customer = found;
                }
                if (employees.ContainsKey(o.OrderID))
                {
                    LogMessage("linking member...", false);
                    var employeeID = Convert.ToInt64(employees[o.OrderID]);
                    var found = NDbUtil.GetByNumericalID<Employee>(odb, Employee.PK, employeeID);
                    o.Employee = found;
                }
                if (shippers.ContainsKey(o.OrderID))
                {
                    LogMessage("linking member...", false);
                    var shipperID = Convert.ToInt64(shippers[o.OrderID]);
                    var found = NDbUtil.GetByNumericalID<Shipper>(odb, Shipper.PK, shipperID);
                    o.ShipVia = found;
                }
                odb.Store(o);
                StepFinished(progress += 0.029);
                LogMessage("saved (" + o.OrderID.ToString() + ")", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Order>().AddUniqueIndexOn("Order_OrderID_PK_index", Order.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Order>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Orders" + Environment.NewLine, true);
        }
Пример #43
0
        private void CopySuppliers(IOdb odb)
        {
            //Processing Suppliers
            LogMessage("Reading Suppliers...", false);
            var adapter1 = new SuppliersTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("Supplier: " + row.SupplierID.ToString() + " ...", false);

                var s = new Supplier
                            {
                                SupplierID = row.SupplierID,
                                CompanyName = row.CompanyName,
                                ContactName = row.IsContactNameNull() ? null : row.ContactName,
                                ContactTitle = row.IsContactTitleNull() ? null : row.ContactTitle,
                                Address = row.IsAddressNull() ? null : row.Address,
                                City = row.IsCityNull() ? null : row.City,
                                Region = row.IsRegionNull() ? null : row.Region,
                                PostalCode = row.IsPostalCodeNull() ? null : row.PostalCode,
                                Country = row.IsCountryNull() ? null : row.Country,
                                Phone = row.IsPhoneNull() ? null : row.Phone,
                                Fax = row.IsFaxNull() ? null : row.Fax,
                                HomePage = row.IsHomePageNull() ? null : row.HomePage
                            };

                odb.Store(s);
                LogMessage("saved", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Supplier>().AddUniqueIndexOn("Supplier_SupplierID_PK_index", Supplier.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Supplier>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Suppliers" + Environment.NewLine, true);
        }
Пример #44
0
        private void CopyCategories(IOdb odb)
        {
            //Processing Categories
            LogMessage("Reading Categories...", false);
            var adapter1 = new CategoriesTableAdapter();
            var table1 = adapter1.GetData();
            LogMessage("processing " + table1.Count.ToString() + " rows", true);
            foreach (var row in table1)
            {
                LogMessage("Categories: " + row.CategoryID.ToString() + " ...", false);

                var c = new Category
                            {
                                CategoryID = row.CategoryID,
                                CategoryName = row.CategoryName,
                                Description = row.IsDescriptionNull() ? null : row.Description,
                                Picture = row.IsPictureNull() ? null : row.Picture
                            };

                odb.Store(c);
                LogMessage("saved", true);
            }
            odb.Commit();

            LogMessage("Commit done, starting create index ...", false);
            odb.IndexManagerFor<Category>().AddUniqueIndexOn("Category_CategoryID_PK_index", Category.PK);
            odb.Commit();
            LogMessage(" index created.", true);

            long objectCount = NDbUtil.GetAllInstances<Category>(odb).Count;
            if (table1.Count == objectCount)
                LogMessage(table1.Count + " objects saved", true);
            else
                LogMessage("Error: " + table1.Count + " rows retrieved but " + objectCount + " objects were saved", true);
            LogMessage("Done with Categories" + Environment.NewLine, true);
        }