Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            PrevalenceEngine engine = PrevalenceActivator.CreateTransparentEngine(typeof(ObjectModel.Company), Path.Combine(Path.GetTempPath(), "CompanySystem"));

            ObjectModel.Company company = engine.PrevalentSystem as ObjectModel.Company;

            // adding a new department is easy...
            ObjectModel.Department sales = new ObjectModel.Department("Sales");
            company.AddDepartment(sales);

            // adding a user is easy too, you only have
            // to remember to put the right department
            // reference...
            ObjectModel.Employee employee = new ObjectModel.Employee("John Salesman");
            employee.Department = new ObjectModel.Department(sales.ID);
            company.AddEmployee(employee);

            DisplayObjects(company);

            // updating an employee...
            ObjectModel.Employee updEmployee = new ObjectModel.Employee(employee.ID);
            updEmployee.Name = "Rodrigo B. de Oliveira";
            company.UpdateEmployee(updEmployee);

            DisplayObjects(company);

            company.RemoveEmployee(employee.ID);

            DisplayObjects(company);
        }
Ejemplo n.º 2
0
        public Application()
        {
            string prevalenceBase = Path.Combine(Environment.CurrentDirectory, "data");

            _engine = PrevalenceActivator.CreateTransparentEngine(typeof(ToDoList), prevalenceBase);
            _system = _engine.PrevalentSystem as ToDoList;
        }
Ejemplo n.º 3
0
        public static void Main(string[] args)
        {
            //ChannelServices.RegisterChannel(new TcpChannel(8080));
            BinaryServerFormatterSinkProvider provider = new BinaryServerFormatterSinkProvider(); provider.TypeFilterLevel = TypeFilterLevel.Full;
            IDictionary props = new Hashtable();

            props["port"] = 8080;
            ChannelServices.RegisterChannel(new TcpChannel(props, null, provider));


            PrevalenceEngine engine = PrevalenceActivator.CreateTransparentEngine(typeof(AddressBook), Path.Combine(Environment.CurrentDirectory, "data"));
            AddressBook      book   = engine.PrevalentSystem as AddressBook;

            // Let's take a complete snapshot of the system
            // each 30 seconds...
            SnapshotTaker st = new SnapshotTaker(engine, 30000);

            ObjRef reference = RemotingServices.Marshal(book, "AddressBook", typeof(AddressBook));

            Console.WriteLine("server running... press <ENTER> to finish");
            Console.ReadLine();

            RemotingServices.Unmarshal(reference);
        }
Ejemplo n.º 4
0
        private void SetUpEngine(System.Collections.Hashtable engines, System.Xml.XmlElement item)
        {
            string     id                   = GetRequiredAttribute(item, "id");
            string     type                 = GetRequiredAttribute(item, "type");
            string     prevalenceBase       = GetOptionalPrevalenceBase(item, id);
            bool       autoVersionMigration = bool.Parse(GetOptionalAttribute(item, "autoVersionMigration", "false"));
            EngineType engineType           = (EngineType)EngineType.Parse(typeof(EngineType),
                                                                           GetOptionalAttribute(item, "engineType", "Normal"));

            System.Type systemType = System.Type.GetType(type);
            if (null == systemType)
            {
                TypeNotFoundError(type, item);
            }

            try
            {
                switch (engineType)
                {
                case EngineType.Transparent:
                    engines[id] = PrevalenceActivator.CreateTransparentEngine(systemType, prevalenceBase, autoVersionMigration);
                    break;

                case EngineType.Normal:
                    engines[id] = PrevalenceActivator.CreateEngine(systemType, prevalenceBase, autoVersionMigration, null);
                    break;

                default:
                    throw new PrevalenceException(prevalenceBase, "Invalid value for engineType attribute. Please specify one of [Normal, Transparent].");
                }
            }
            catch (System.Exception x)
            {
                SetUpError(x, item);
            }
        }
Ejemplo n.º 5
0
 private void SetupEngine()
 {
     engine = PrevalenceActivator.CreateTransparentEngine(typeof(CacheSystem), dataDir);
     system = engine.PrevalentSystem as CacheSystem;
     taker  = new SnapshotTaker(engine, TimeSpan.FromMinutes(5), CleanUpAllFilesPolicy.Default);
 }
 protected void Application_Start(object sender, EventArgs args)
 {
     _engine = PrevalenceActivator.CreateTransparentEngine(typeof(UserLoginSystem), PrevalenceBase);
 }