///<Summary>
        /// Process
        ///</Summary>
        /// <param name="controllerName"></param>
        /// <param name="fileName"></param>
        /// <param name="folderName"></param>
        /// <param name="productName"></param>
        /// <param name="productFamily"></param>
        /// <param name="methodName"></param>
        /// <param name="action"></param>
        protected async Task <Response> Process(string controllerName, string fileName, string folderName, string productName, string productFamily, string methodName, inFileActionDelegate action)
        {
            string tempFileName = fileName;
            string sourceFolder = Aspose.App.Live.Demos.UI.Config.Configuration.WorkingDirectory + folderName;

            fileName = sourceFolder + "/" + fileName;

            string statusValue     = "OK";
            int    statusCodeValue = 200;

            try
            {
                action(fileName);

                //Directory.Delete(sourceFolder, true);
            }
            catch (Exception ex)
            {
                statusCodeValue = 500;
                statusValue     = "500 " + ex.Message;
            }
            return(await Task.FromResult(new Response
            {
                Status = statusValue,
                StatusCode = statusCodeValue,
            }));
        }
 private Response ProcessTask(string fileName, string folderName, inFileActionDelegate action)
 {
     Aspose.ZIP.Live.Demos.UI.Models.License.SetAsposeZIPLicense();
     return(Process(this.GetType().Name, fileName, folderName, (new StackTrace()).GetFrame(5).GetMethod().Name, action));
 }
        protected Response ProcessConversion(string controllerName, string fileName, string folderName, inFileActionDelegate action)
        {
            string logMsg       = "ControllerName: " + controllerName + " FileName: " + fileName;
            string guid         = Guid.NewGuid().ToString();
            string sourceFolder = AppSettings.WorkingDirectory + folderName;

            fileName = sourceFolder + "/" + fileName;

            string    statusValue     = "OK";
            int       statusCodeValue = 200;
            Exception ex = null;

            try
            {
                action(fileName);

                try
                {
                    //Directory.Delete(sourceFolder, true);
                }
                catch
                { }

                // Log information to NLogging database
                //NLogger.LogInfo(logMsg, productFamily);
            }
            catch (Exception exc)
            {
                statusValue     = "500 " + exc.Message;
                statusCodeValue = 500;
                // Log error message to NLogging database
                ex = exc;
            }
            return(new Response
            {
                Status = statusValue,
                StatusCode = statusCodeValue,
                exc = ex
            });
        }
        ///<Summary>
        /// Process
        ///</Summary>
        /// <param name="controllerName"></param>
        /// <param name="fileName"></param>
        /// <param name="folderName"></param>
        /// <param name="productName"></param>
        /// <param name="productFamily"></param>
        /// <param name="methodName"></param>
        /// <param name="action"></param>
        protected Response Process(string modelName, string fileName, string folderName, string methodName, inFileActionDelegate action)
        {
            string tempFileName = fileName;
            string sourceFolder = Config.Configuration.WorkingDirectory + folderName;

            fileName = sourceFolder + "/" + fileName;

            string statusValue     = "OK";
            int    statusCodeValue = 200;

            try
            {
                action(fileName);

                //Directory.Delete(sourceFolder, true);
            }
            catch (Exception ex)
            {
                statusCodeValue = 500;
                statusValue     = "500 " + ex.Message;
            }
            return(new Response
            {
                Status = statusValue,
                StatusCode = statusCodeValue,
            });
        }