Exemple #1
0
 public static void WriteSpeed(ProtoEngine protoEngine)
 {
     protoEngine.Start();
     protoEngine.SpeedUp();
     protoEngine.Stop();
     Console.WriteLine("{0}. Speed {1}", protoEngine.GetType().Name, protoEngine.Speed);
 }
Exemple #2
0
        protected BaseProtoApiController()
        {
            var hc         = ProtoEngine.GetHttpConfiguration();
            var jsonSerStg = hc.Formatters.JsonFormatter.SerializerSettings;

            jsonSerStg.TypeNameHandling = TypeNameHandling.Auto;
            jsonSerStg.TypeNameAssemblyFormatHandling = TypeNameAssemblyFormatHandling.Simple;
            jsonSerStg.ReferenceLoopHandling          = ReferenceLoopHandling.Ignore;
        }
        protected void Application_Start()
        {
            lock (_dbMigrationLock) {
                if (GlobalWebConfig.DbMigration_MigrateOnAppStart)
                {
                    var dbMigrator = new DatabaseMigrator <ApplicationDbContext, DbMigrationConfiguration>();
                    dbMigrator.MigrateToLatestVersion(GlobalWebConfig.DbMigration_AllowDataLoss);
                }
            }

            // Start ProtoCMS engine
            ProtoEngine.Start();

            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
        }
Exemple #4
0
        public static void Main(string[] args)
        {
            var engine = new ProtoEngine(new JsonConfiguration(new JobSet
            {
                SolutionDirectory = AppContext.BaseDirectory,
                Jobs = new List<Job>
                {
                    new Job
                    {
                        Name = "test job",
                        ProtoDirectory = AppContext.BaseDirectory,
                        OutputDirectory = AppContext.BaseDirectory
                    }
                }
            }));

            engine.ProcessProto();

            System.Console.ReadLine();
        }
Exemple #5
0
        static void Main(string[] args)
        {
            //Herencia
            Engine truckEngine = new TruckEngine(6);

            Utilities.WriteSpeed(truckEngine);
            Engine carEngine = CarEngineBuilder.WithCylinders(2).Build();

            Utilities.WriteSpeed(carEngine);

            //Composicion
            ProtoEngine motorbikeEngine = new MotorbikeEngine(new HyperSpeedBehavior());

            Utilities.WriteSpeed(motorbikeEngine);
            ProtoEngine busEngine = BusEngineBuilder.WithCylinders(4).WithSpeedUpBehavior(new PublicTransportSpeedBehavior()).Build();

            Utilities.WriteSpeed(busEngine);

            busEngine.ChangeSpeedUpBehavior(new HyperSpeedBehavior());
            Utilities.WriteSpeed(busEngine);

            Console.ReadKey();
        }
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            if (!base.AuthorizeCore(httpContext))
            {
                return(false);
            }

            var di = ProtoEngine.GetDependencyProvider();

            var perMgr = di.GetService(typeof(IPermissionManager))
                         .DirectCastTo <IPermissionManager>();

            var usrMgr = di.GetService(typeof(IProtoUserManager))
                         .DirectCastTo <IProtoUserManager>();

            var authUser = usrMgr.GetAuthenticatedProtoUser(httpContext);

            if (authUser == null)
            {
                return(perMgr.RoleHasAllPermissions(RequiredRoleInfo.Guest.Name, RequiredPermissionIds));
            }
            return(perMgr.UserHasAllPermissions(authUser.Id, RequiredPermissionIds));
        }