private SystemMVC.ActionResult GetActionResult(string hash, bool streaming)
        {
            var path      = paths[hash];
            var extension = SystemIO.Path.GetExtension(path);

            extension = extension.Substring(1);

            var fileInfo = new SystemIO.FileInfo(path);
            var lenght   = fileInfo.Length;

            string mimeType = null;

            if ("mp4".Equals(extension))
            {
                mimeType = "video/mp4";
            }
            if ("mpe".Equals(extension))
            {
                mimeType = "video/mpeg";
            }
            if ("mpeg".Equals(extension))
            {
                mimeType = "video/mpeg";
            }
            if ("mpg".Equals(extension))
            {
                mimeType = "video/mpeg";
            }
            if ("mov".Equals(extension))
            {
                mimeType = "video/quicktime";
            }
            if ("mxf".Equals(extension))
            {
                mimeType = "application/mxf";
            }
            if ("pdf".Equals(extension))
            {
                mimeType = "application/pdf";
            }

            if (mimeType == null)
            {
                Trace.TraceWarning("FileController: unknown file extension: " + extension + "\n sending as application/octet-stream");
                mimeType = "application/octet-stream";
            }

            var fileStream = SystemIO.File.OpenRead(path);

            SystemMVC.FileStreamResult result = null;
            if (streaming)
            {
                result = new VideoStreamResult(fileStream, mimeType, lenght);
            }
            else
            {
                var filename = SystemIO.Path.GetFileName(path);
                result = new SystemMVC.FileStreamResult(fileStream, mimeType);
                result.FileDownloadName = filename;
            }

            return(result);
        }
        private SystemMVC.ActionResult GetActionResult(string hash, bool streaming)
        {
            var path = paths[hash];
            var extension = SystemIO.Path.GetExtension(path);
            extension = extension.Substring(1);

            var fileInfo = new SystemIO.FileInfo(path);
            var lenght = fileInfo.Length;
            
            string mimeType = null;
            if ("mp4".Equals(extension)) { mimeType = "video/mp4"; }
            if ("mpe".Equals(extension)) { mimeType = "video/mpeg"; }
            if ("mpeg".Equals(extension)) { mimeType = "video/mpeg"; }
            if ("mpg".Equals(extension)) { mimeType = "video/mpeg"; }
            if ("mov".Equals(extension)) { mimeType = "video/quicktime"; }
            if ("mxf".Equals(extension)) { mimeType = "application/mxf"; }
            if ("pdf".Equals(extension)) { mimeType = "application/pdf"; }

            if (mimeType == null)
            {
                Trace.TraceWarning("FileController: unknown file extension: " + extension + "\n sending as application/octet-stream");
                mimeType = "application/octet-stream"; 
            }

            var fileStream = SystemIO.File.OpenRead(path);
            SystemMVC.FileStreamResult result = null;
            if (streaming)
            {
                result = new VideoStreamResult(fileStream, mimeType, lenght);
            }
            else
            {
                var filename = SystemIO.Path.GetFileName(path);
                result = new SystemMVC.FileStreamResult(fileStream, mimeType);
                result.FileDownloadName = filename;
            }

            return result;
        }