public override IHttpHandler GetHandler(HttpContext context, string requestType, string url, string path)
        {
            Type         pageType = PageMapper.GetObjectType(context, url);
            IHttpHandler handler  = new ServletFacesPageHandler(url, pageType, BaseHttpServlet.FacesContextFactory, BaseHttpServlet.Lifecycle);

            return(SessionWrapper.WrapHandler(handler));
        }
Example #2
0
        public void InitializeDriver()
        {
            this.objectContainer.RegisterTypeAs <ProxyLogger, ILogger>();
            var logger = this.objectContainer.Resolve <ILogger>();

            var factory = BrowserFactory.GetBrowserFactory(logger);
            var browser = factory.GetBrowser();

            this.objectContainer.RegisterInstanceAs(browser);

            this.objectContainer.RegisterInstanceAs <ISettingHelper>(new WrappedSettingHelper());

            var mapper = new PageMapper();

            mapper.Initialize(browser.BasePageType);
            this.objectContainer.RegisterInstanceAs <IPageMapper>(mapper);

            this.objectContainer.RegisterInstanceAs <IScenarioContextHelper>(new ScenarioContextHelper());
            this.objectContainer.RegisterInstanceAs(TokenManager.Current);

            var repository = new ActionRepository(this.objectContainer);

            this.objectContainer.RegisterInstanceAs <IActionRepository>(repository);
            this.objectContainer.RegisterTypeAs <ActionPipelineService, IActionPipelineService>();

            // Initialize the repository
            repository.Initialize();
        }
Example #3
0
        /// <summary>
        /// Initializes the page mapper at the start of the test run.
        /// </summary>
        public void InitializeDriver()
        {
            this.objectContainer.RegisterTypeAs <ProxyLogger, ILogger>();

            var logger = this.objectContainer.Resolve <ILogger>();

            browserFactory = BrowserFactory.GetBrowserFactory(logger);
            this.objectContainer.RegisterInstanceAs(browserFactory, dispose: true);

            var mapper = new PageMapper();

            this.objectContainer.RegisterInstanceAs <IPageMapper>(mapper);

            this.objectContainer.RegisterFactoryAs((container) =>
            {
                return(InitializeBrowser(container));
            });

            this.objectContainer.RegisterInstanceAs <ISettingHelper>(new WrappedSettingHelper());

            this.objectContainer.RegisterTypeAs <ScenarioContextHelper, IScenarioContextHelper>();
            this.objectContainer.RegisterTypeAs <TokenManager, ITokenManager>();

            actionRepository = new ActionRepository(this.objectContainer);
            this.objectContainer.RegisterInstanceAs <IActionRepository>(actionRepository);

            var actionPipelineService = new ActionPipelineService(actionRepository);

            this.objectContainer.RegisterInstanceAs <IActionPipelineService>(actionPipelineService);
        }
Example #4
0
        public static MasterPage GetCompiledMasterInstance(string virtualPath, string inputFile, HttpContext context)
        {
            string resolvedUrl;

            if (VirtualPathUtility.IsAbsolute(virtualPath))
            {
                resolvedUrl = virtualPath;
            }
            else if (VirtualPathUtility.IsAppRelative(virtualPath))
            {
                resolvedUrl = System.Web.Util.UrlUtils.ResolveVirtualPathFromAppAbsolute(virtualPath);
            }
            else
            {
                resolvedUrl = VirtualPathUtility.Combine(VirtualPathUtility.GetDirectory(context.Request.FilePath, false), virtualPath);
            }
            Type tmpType = PageMapper.GetObjectType(context, resolvedUrl);

            if (tmpType == null)
            {
                throw new InvalidOperationException("Master page '" + virtualPath + "' not found");
            }

            Object obj = Activator.CreateInstance(tmpType);

            return((MasterPage)obj);
        }
Example #5
0
        public void TestMapAssemblyTypesWithNormalType()
        {
            var mapper = new PageMapper();

            mapper.MapAssemblyTypes(new[] { typeof(string) }, typeof(TestBase));

            Assert.AreEqual(0, mapper.MapCount);
        }
Example #6
0
        public void TestMapAssemblyTypesWithNonPrefixedPageName()
        {
            var mapper = new PageMapper();

            mapper.MapAssemblyTypes(new[] { typeof(NoName) }, typeof(TestBase));

            var type = mapper.GetTypeFromName("noname");

            Assert.IsNotNull(type);
            Assert.AreEqual(1, mapper.MapCount);
        }
Example #7
0
        public void TestGetTypeFromNameNullString()
        {
            var mapper         = new PageMapper();
            var nullType       = mapper.GetTypeFromName(null);
            var emptyType      = mapper.GetTypeFromName(string.Empty);
            var whitespaceType = mapper.GetTypeFromName("    ");

            Assert.IsNull(nullType);
            Assert.IsNull(emptyType);
            Assert.IsNull(whitespaceType);
        }
Example #8
0
        Type GetTypeFromControlPath(string virtualPath)
        {
            if (virtualPath == null)
            {
                throw new ArgumentNullException("virtualPath");
            }

            string vpath = UrlUtils.Combine(TemplateSourceDirectory, virtualPath);

            return(PageMapper.GetObjectType(Context, vpath));
        }
        public virtual IHttpHandler GetHandler(HttpContext context, string requestType, string url, string path)
        {
            if (!path.StartsWith(IAppDomainConfig.WAR_ROOT_SYMBOL))
            {
                path = context.Request.MapPath(path);
            }
            Type   tmpType = PageMapper.GetObjectType(path);
            Object obj     = Activator.CreateInstance(tmpType);

            return((IHttpHandler)obj);
        }
Example #10
0
        public static Type GetProfileGroupType(HttpContext context, string groupName)
        {
            if (!ProfileGroupTypeExists)
            {
                return(null);
            }

            string resolvedUrl      = System.Web.Util.UrlUtils.ResolveVirtualPathFromAppAbsolute(virtualPathGroup + groupName).TrimEnd('/');
            Type   profileGroupType = PageMapper.GetObjectType(context, resolvedUrl, false);

            ProfileGroupTypeExists = profileGroupType != null;
            return(profileGroupType);
        }
Example #11
0
        public void TestMapAssemblyTypesWithPrefixedPageNameAndAlias()
        {
            var mapper = new PageMapper();

            mapper.MapAssemblyTypes(new[] { typeof(AliasPage) }, typeof(TestBase));

            var type      = mapper.GetTypeFromName("alias");
            var aliasType = mapper.GetTypeFromName("another item");

            Assert.IsNotNull(type);
            Assert.IsNotNull(aliasType);
            Assert.AreEqual(2, mapper.MapCount);
        }
Example #12
0
        public void TestMapAssemblyTypesWithPrefixedPageName()
        {
            var mapper = new PageMapper();

            mapper.MapAssemblyTypes(new[] { typeof(MyPage) }, typeof(TestBase));

            var type           = mapper.GetTypeFromName("my");
            var shouldNotExist = mapper.GetTypeFromName("mypage");

            Assert.IsNotNull(type);
            Assert.IsNull(shouldNotExist);
            Assert.AreEqual(1, mapper.MapCount);
        }
Example #13
0
        public static IHttpHandler GetCompiledPageInstance(string virtualPath,
                                                           string inputFile,
                                                           HttpContext context)
        {
            Type tmpType = PageMapper.GetObjectType(context, virtualPath);

            if (tmpType == null)
            {
                throw new InvalidOperationException("Documentation page '" + virtualPath + "' not found");
            }
            Object obj = Activator.CreateInstance(tmpType);

            return((IHttpHandler)obj);
        }
Example #14
0
        private void InitializeNavigation(Page startPage)
        {
            var mapper = new PageMapper();

            mapper.AddMapping(typeof(InitialPage), NavigationPageSource.InitialPage);
            mapper.AddMapping(typeof(AuthenticationPage), NavigationPageSource.AuthenticationPage);
            mapper.AddMapping(typeof(AppShell), NavigationPageSource.AppShell);
            mapper.AddMapping(typeof(AppointmentPage), NavigationPageSource.AppointmentPage);
            mapper.AddMapping(typeof(CardsPage), NavigationPageSource.CardsPage);
            mapper.AddMapping(typeof(GetStartedPage), NavigationPageSource.GetStartedPage);

            var navigationService = DependencyService.Get <INavigationService>();

            navigationService.Initialize(startPage.Navigation, mapper);
        }
Example #15
0
        public static PageTheme GetCompiledInstance(string virtualPath, HttpContext context)
        {
            virtualPath = "~/App_Themes/" + virtualPath + "/";
            string resolvedUrl = System.Web.Util.UrlUtils.ResolveVirtualPathFromAppAbsolute(virtualPath).TrimEnd('/');
            Type   tmpType     = PageMapper.GetObjectType(context, resolvedUrl);

            if (tmpType == null)
            {
                throw new InvalidOperationException("ThemeDirectoryCompiler '" + virtualPath + "' not found");
            }

            Object obj = Activator.CreateInstance(tmpType);

            return((PageTheme)obj);
        }
Example #16
0
        /// <summary>
        /// Initializes the page mapper at the start of the test run.
        /// </summary>
        public void InitializeDriver()
        {
            this.objectContainer.RegisterTypeAs <ProxyLogger, ILogger>();
            var logger = this.objectContainer.Resolve <ILogger>();

            var factory       = BrowserFactory.GetBrowserFactory(logger);
            var configSection = configurationHandler.Value;

            bool reusingBrowser = true;

            if (!configSection.BrowserFactory.ReuseBrowser || Browser == null || Browser.IsDisposed)
            {
                Browser        = factory.GetBrowser();
                reusingBrowser = false;
            }

            if (configSection.BrowserFactory.EnsureCleanSession)
            {
                Browser.ClearCookies();

                if (reusingBrowser)
                {
                    Browser.ClearUrl();
                }
            }

            // NOTE: Don't register the browser to dispose, since doing so breaks the reuseBrowser support.
            // We will dispose it after scenario or test run as appropriate.
            this.objectContainer.RegisterInstanceAs(Browser, dispose: false);

            this.objectContainer.RegisterInstanceAs <ISettingHelper>(new WrappedSettingHelper());

            var mapper = new PageMapper();

            mapper.Initialize(Browser.BasePageType);
            this.objectContainer.RegisterInstanceAs <IPageMapper>(mapper);

            this.objectContainer.RegisterTypeAs <ScenarioContextHelper, IScenarioContextHelper>();
            this.objectContainer.RegisterTypeAs <TokenManager, ITokenManager>();

            var repository = new ActionRepository(this.objectContainer);

            this.objectContainer.RegisterInstanceAs <IActionRepository>(repository);
            this.objectContainer.RegisterTypeAs <ActionPipelineService, IActionPipelineService>();

            // Initialize the repository
            repository.Initialize();
        }
Example #17
0
        public async Task <PageDataRes <ResSchedule> > GetPageAsync([FromBody] NavigateOrderPageDataReq pageReq)
        {
            var page = new PageDataRes <ResSchedule>();

            if (pageReq != null)
            {
                var query = pageReq.query;
                Filter <ResSchedule> filter = null;
                if (query.Count > 0)
                {
                    var fuc = FilterHelper <ResSchedule> .GetExpression(query, "schedulegetpage");

                    filter = new Repository.Filter <ResSchedule>(fuc);
                }
                OrderBy <ResSchedule> orderBy = null;
                if (pageReq.order != null && !string.IsNullOrWhiteSpace(pageReq.order.columnName))
                {
                    orderBy = new Repository.OrderBy <ResSchedule>(pageReq.order.columnName, pageReq.order.reverse);
                }
                try
                {
                    var result = await _dataPager.QueryAsync(
                        pageReq.pageNum, pageReq.pageSize, filter, orderBy, navigationPropertyPaths : null);

                    page = PageMapper <ResSchedule> .ToPageDateRes(result);

                    return(page);
                }
                catch (Exception ex)
                {
                    page.code = ResCode.Error;
                    page.msg  = ex.Message;
                    return(page);
                }
            }
            else
            {
                page.code = ResCode.Error;
                page.msg  = "参数不正确";
                return(page);
            }
        }
Example #18
0
        public void InitializeDriver()
        {
            this.objectContainer.RegisterTypeAs <ProxyLogger, ILogger>();
            var logger = this.objectContainer.Resolve <ILogger>();

            IBrowser browser;

            if (this.reuseBrowser)
            {
                if (!TestRunContext.Current.TryGetValue(out browser))
                {
                    var factory = BrowserFactory.GetBrowserFactory(logger);
                    browser = new ReusableBrowser(factory.GetBrowser());
                    TestRunContext.Current.Set(browser);
                }
            }
            else
            {
                var factory = BrowserFactory.GetBrowserFactory(logger);
                browser = factory.GetBrowser();
            }
            this.objectContainer.RegisterInstanceAs(browser);

            this.objectContainer.RegisterInstanceAs <ISettingHelper>(new WrappedSettingHelper());

            var mapper = new PageMapper();

            mapper.Initialize(browser.BasePageType);
            this.objectContainer.RegisterInstanceAs <IPageMapper>(mapper);

            this.objectContainer.RegisterInstanceAs <IScenarioContextHelper>(new ScenarioContextHelper());
            this.objectContainer.RegisterInstanceAs(TokenManager.Current);

            var repository = new ActionRepository(this.objectContainer);

            this.objectContainer.RegisterInstanceAs <IActionRepository>(repository);
            this.objectContainer.RegisterTypeAs <ActionPipelineService, IActionPipelineService>();

            // Initialize the repository
            repository.Initialize();
        }
Example #19
0
        public void InitializeDriver()
        {
            this.objectContainer.RegisterTypeAs <ProxyLogger, ILogger>();
            var logger = this.objectContainer.Resolve <ILogger>();

            var factory       = BrowserFactory.GetBrowserFactory(logger);
            var configSection = configurationHandler.Value;

            if (!configSection.BrowserFactory.ReuseBrowser || browser == null)
            {
                browser = factory.GetBrowser();
            }

            if (configSection.BrowserFactory.EnsureCleanSession)
            {
                browser.ClearCookies();
            }

            this.objectContainer.RegisterInstanceAs(browser, dispose: true);

            this.objectContainer.RegisterInstanceAs <ISettingHelper>(new WrappedSettingHelper());

            var mapper = new PageMapper();

            mapper.Initialize(browser.BasePageType);
            this.objectContainer.RegisterInstanceAs <IPageMapper>(mapper);

            this.objectContainer.RegisterTypeAs <ScenarioContextHelper, IScenarioContextHelper>();
            this.objectContainer.RegisterTypeAs <TokenManager, ITokenManager>();

            var repository = new ActionRepository(this.objectContainer);

            this.objectContainer.RegisterInstanceAs <IActionRepository>(repository);
            this.objectContainer.RegisterTypeAs <ActionPipelineService, IActionPipelineService>();

            // Initialize the repository
            repository.Initialize();
        }
        public ActionResult <PageDataRes <UsTagTypeInventory> > GetPage(PageReq req)
        {
            var res = new PageDataRes <UsTagTypeInventory>()
            {
                code = ResCode.Success
            };

            if (req != null)
            {
                using (var uow = _uowProvider.CreateUnitOfWork())
                {
                    var repository = uow.GetCustomRepository <IUsTagTypeInventoryRepository>();
                    var page       = repository.GetPage(req.pageNum, req.pageSize, FilterNode.ListToString(req.query));
                    res = PageMapper <UsTagTypeInventory> .ToPageDateRes(page);
                }
            }
            else
            {
                res.code = ResCode.NoValidate;
                res.msg  = ResMsg.ParameterIsNull;
            }
            return(res);
        }
Example #21
0
        public virtual async Task <ActionResult <PageDataRes <TEntity> > > GetPage([FromBody] NavigateOrderPageDataReq req)
        {
            var result = new PageDataRes <TEntity>()
            {
                code = ResCode.Success
            };

            using (var uow = _uowProvider.CreateUnitOfWork())
            {
                try
                {
                    var               query        = req.query;
                    string            parameterstr = typeof(TEntity).Name + "Page";
                    OrderBy <TEntity> order        = null;
                    if (req.order != null)
                    {
                        order = new OrderBy <TEntity>(req.order.columnName, req.order.reverse);
                    }
                    var repository = uow.GetRepository <TEntity>();
                    var fuc        = FilterHelper <TEntity> .GetExpression(query, parameterstr);

                    var filter = new Repository.Filter <TEntity>(fuc);
                    var models = await _dataPager.QueryAsync(req.pageNum, req.pageSize, filter, order, req.navPropertyPaths);

                    result = PageMapper <TEntity> .ToPageDateRes(models);

                    return(result);
                }
                catch (Exception ex)
                {
                    result.code = ResCode.ServerError;
                    result.msg  = ex.Message;
                    return(result);
                }
            }
        }
Example #22
0
        protected void SetStringResourcePointer(object stringResourcePointer,
                                                int maxResourceOffset)
        {
            if (GetResourceBytes(this.GetType()) != null)
            {
                return;
            }

            java.lang.Class       c = vmw.common.TypeUtils.ToClass(stringResourcePointer);
            java.lang.ClassLoader contextClassLoader = c.getClassLoader();

            //TODO:move this code to page mapper
            string assemblyName = PageMapper.GetAssemblyResource(Context, VirtualPathUtility.ToAbsolute(AppRelativeVirtualPath));

            if (assemblyName == null)
            {
                throw new HttpException(404, "The requested resource (" + this.AppRelativeVirtualPath + ") is not available.");
            }

            java.io.InputStream inputStream = contextClassLoader.getResourceAsStream(assemblyName);

            System.IO.Stream strim = null;
            if (inputStream == null)
            {
                string descPath = String.Join("/", new string [] { "assemblies", this.GetType().Assembly.GetName().Name, assemblyName });
                try {
                    strim = new StreamReader(HttpContext.Current.Request.MapPath("/" + descPath)).BaseStream;
                }
                catch (Exception ex) {
                    throw new System.IO.IOException("couldn't open resource file:" + assemblyName, ex);
                }
                if (strim == null)
                {
                    throw new System.IO.IOException("couldn't open resource file:" + assemblyName);
                }
            }

            try {
                if (strim == null)
                {
                    strim = (System.IO.Stream)vmw.common.IOUtils.getStream(inputStream);
                }
                int     capacity      = (int)strim.Length;
                byte [] resourceBytes = new byte [capacity];
                strim.Read(resourceBytes, 0, capacity);
                SetResourceBytes(this.GetType(), resourceBytes);
            }
            catch (Exception e) {
                throw new HttpException("problem with dll.ghres file", e);
            }
            finally {
                if (strim != null)
                {
                    strim.Close();
                }
                if (inputStream != null)
                {
                    inputStream.close();
                }
            }
        }
Example #23
0
 public static void Run()
 {
     PageMapper.Run();
     HeaderMapper.Run();
 }
Example #24
0
 public static Type GetCompiledType(string inputFile, HttpContext context)
 {
     return(PageMapper.GetObjectType(context, inputFile));
 }
Example #25
0
        public virtual async Task <ActionResult <PageDataRes <TEntity> > > GetPageAsync([FromBody] NavigateOrderPageDataReq pageReq)
        {
            bool cp = false;

            using (var uow = _uowProvider.CreateUnitOfWork())
            {
                cp = await CheckPermission("Read", uow);
            }
            string nvastr       = "";
            string parameterstr = typeof(TEntity).Name + "Page";

            if (cp)
            {
                var page = new PageDataRes <TEntity>();
                try
                {
                    if (pageReq != null)
                    {
                        var query = pageReq.query;
                        var fuc   = FilterHelper <TEntity> .GetExpression(query, parameterstr);

                        var filter = new Repository.Filter <TEntity>(fuc);
                        if (pageReq.order == null || string.IsNullOrEmpty(pageReq.order.columnName))
                        {
                            pageReq.order.columnName = "Id";
                            pageReq.order.reverse    = false;
                        }
                        var orderBy  = new Repository.OrderBy <TEntity>(pageReq.order.columnName, pageReq.order.reverse);
                        var includes = _uowProvider.CreateUnitOfWork().GetRepository <TEntity>();

                        try
                        {
                            var result = await _dataPager.QueryAsync(pageReq.pageNum, pageReq.pageSize, filter,
                                                                     orderBy, pageReq.navPropertyPaths);

                            page = PageMapper <TEntity> .ToPageDateRes(result);

                            return(page);
                        }
                        catch (Exception ex)
                        {
                            page.code = ResCode.Error;
                            page.msg  = ex.Message;
                            return(page);
                        }
                    }
                    else
                    {
                        page.code = ResCode.Error;
                        page.msg  = "参数不能为空";
                        return(page);
                    }
                }
                catch (Exception ex)
                {
                    page.code = ResCode.ServerError;
                    page.msg  = ex.Message;
                    return(page);
                }
            }
            else
            {
                return(Unauthorized());
            }
        }
Example #26
0
        public virtual async Task <ActionResult <PageDataRes <TEntity> > > GetPageAsync([FromBody] NavigateOrderPageDataReq pageReq)
        {
            bool cp = false;

            using (var uow = _uowProvider.CreateUnitOfWork())
                cp = await CheckPermission("Edit", uow);
            if (cp)
            {
                var page = new PageDataRes <TEntity>();
                try
                {
                    string parameterstr = _typeName + "Page";
                    if (pageReq != null)
                    {
                        var query = pageReq.query;
                        query.Add(new FilterNode
                        {
                            andorop  = "and",
                            key      = "StopFlag",
                            binaryop = "eq",
                            value    = false
                        });
                        var fuc = FilterHelper <TEntity> .GetExpression(query, parameterstr);

                        var filter = new Repository.Filter <TEntity>(fuc);
                        if (pageReq.order == null || pageReq.order.columnName == null)
                        {
                            pageReq.order            = new Order();
                            pageReq.order.columnName = "Id";
                            pageReq.order.reverse    = false;
                        }
                        var orderBy = new Repository.OrderBy <TEntity>(pageReq.order.columnName, pageReq.order.reverse);
                        try
                        {
                            var result = await _dataPager.QueryAsync(pageReq.pageNum, pageReq.pageSize, filter,
                                                                     orderBy, pageReq.navPropertyPaths);

                            page = PageMapper <TEntity> .ToPageDateRes(result);

                            return(page);
                        }
                        catch (Exception ex)
                        {
                            page.code = ResCode.Error;
                            page.msg  = ex.Message;
                            return(page);
                        }
                    }
                    else
                    {
                        page.code = ResCode.Error;
                        page.msg  = "参数不正确";
                        return(page);
                    }
                }
                catch (Exception ex)
                {
                    page.code = ResCode.ServerError;
                    page.msg  = ex.Message;
                    return(page);
                }
            }
            else
            {
                return(Unauthorized());
            }
        }