Ejemplo n.º 1
0
        public IRequest Create(IEnumerable<string> requestLines, MountPoint mount, string vpath)
        {
            if (vpath == null) throw new ArgumentNullException("vpath");

            var request = new Request { MountPoint = mount, VirtualPath = vpath };

            PopulateRequestPostedData(request, requestLines);
            PopulateRequestHeaders(request, requestLines);
            PopulateRequestQueryStringValues(request, vpath);

            return request;
        }
Ejemplo n.º 2
0
        public static bool MountContainsPath(MountPoint mount, string virtualPath)
        {
            if (virtualPath.StartsWith(mount.VirtualPath, StringComparison.OrdinalIgnoreCase))
            {
                if (mount.VirtualPath.Length == virtualPath.Length)
                {
                    return true;
                }
                var remainingPath = virtualPath.Substring(mount.VirtualPath.Length);
                return remainingPath.Length == 0 ||
                    remainingPath[0] == '/' ||
                    remainingPath[0] == '?' ||
                    remainingPath[0] == '#';
            }

            return false;
        }