コード例 #1
0
        /// <summary>
        ///     Create a new GhostscriptJob instance
        /// </summary>
        /// <param name="jobInfo">JobInfo of the job to convert</param>
        /// <param name="profile">Profile that determines the conversion process</param>
        /// <param name="tempFolder">
        ///     TempFolderProvider that gives the full Temp path, i.e. C:\Users\Admin\Local
        ///     Settings\Temp\clawPDF
        /// </param>
        /// <param name="jobTranslations">Translations needed for the job</param>
        /// <param name="fileWrap">Only for testing</param>
        /// <param name="directoryWrap">Only for testing</param>
        public GhostscriptJob(IJobInfo jobInfo, ConversionProfile profile, JobTranslations jobTranslations,
                              ITempFolderProvider tempFolder, IFile fileWrap, IDirectory directoryWrap)
            : base(jobInfo, profile, jobTranslations, fileWrap, directoryWrap)
        {
            var gsVersion = new GhostscriptDiscovery().GetBestGhostscriptInstance();

            if (gsVersion == null)
            {
                Logger.Error("No valid Ghostscript version found.");
                throw new InvalidOperationException("No valid Ghostscript version found.");
            }

            Logger.Debug("Ghostscript Version: " + gsVersion.Version + " loaded from " + gsVersion.DllPath);
            _ghostScript = new GhostScript(gsVersion);

            JobTempFolder = PathSafe.Combine(tempFolder.TempFolder,
                                             "Job_" + PathSafe.GetFileNameWithoutExtension(PathSafe.GetRandomFileName()));
            JobTempOutputFolder = PathSafe.Combine(JobTempFolder, "tempoutput");
            DirectoryWrap.CreateDirectory(JobTempFolder);
            DirectoryWrap.CreateDirectory(JobTempOutputFolder);

            // Shorten the temp folder for GS compatibility
            //缩短临时文件夹以实现GS兼容性
            JobTempFolder = JobTempFolder;
        }
コード例 #2
0
        /// <summary>
        /// Checks for the existence of the given path on the filesystem and attempts to create it if not present.
        /// </summary>
        /// <param name="directoryPath">The path to check</param>
        public void CreateDirectoryIfNotExists(string directoryPath)
        {
            DirectoryWrap directory = new DirectoryWrap();

            if (!directory.Exists(directoryPath))
            {
                directory.CreateDirectory(directoryPath);
            }
        }
コード例 #3
0
 public static void Bind(IntPtr L)
 {
     AnimationWrap.Register(L);
     AnimatorWrap.Register(L);
     ApplicationWrap.Register(L);
     AssetBundleWrap.Register(L);
     BaseLuaWrap.Register(L);
     BehaviourWrap.Register(L);
     ColorWrap.Register(L);
     ComponentWrap.Register(L);
     CoreWrap.Register(L);
     DebugWrap.Register(L);
     DeviceInfoWrap.Register(L);
     DownLoadFromWebWrap.Register(L);
     EventListenerWrap.Register(L);
     EventSenderWrap.Register(L);
     GameObjectWrap.Register(L);
     JumperWrap.Register(L);
     LuaLinkerWrap.Register(L);
     LuaManagerWrap.Register(L);
     LuaScriptMgrWrap.Register(L);
     LuaToolsWrap.Register(L);
     MathWrap.Register(L);
     MonoBehaviourWrap.Register(L);
     NGUIDebugWrap.Register(L);
     ObjectWrap.Register(L);
     ResourcesWrap.Register(L);
     TimeWrap.Register(L);
     TransformWrap.Register(L);
     TweenAlphaWrap.Register(L);
     TweenPositionWrap.Register(L);
     TweenScaleWrap.Register(L);
     TypeWrap.Register(L);
     UIBasicSpriteWrap.Register(L);
     UIButtonColorWrap.Register(L);
     UIButtonWrap.Register(L);
     UICameraWrap.Register(L);
     UIEventManagerWrap.Register(L);
     UILabelWrap.Register(L);
     UIPanelWrap.Register(L);
     UIProgressBarWrap.Register(L);
     UIRectWrap.Register(L);
     UISliderWrap.Register(L);
     UISpriteWrap.Register(L);
     UITextureWrap.Register(L);
     UITweenerWrap.Register(L);
     UIWidgetContainerWrap.Register(L);
     Vector2Wrap.Register(L);
     Vector3Wrap.Register(L);
     UIWidgetWrap.Register(L);
     DirectoryWrap.Register(L);
     FileWrap.Register(L);
     yieldWrap.Register(L);
 }
コード例 #4
0
        public void CreateDirectory_MoveTo()
        {
            //arange
            IDirectory directory = new DirectoryWrap(); // should create this somewhere and inject into you method for later mocking
            var        source    = Path.GetRandomFileName();
            var        target    = Path.GetRandomFileName();

            //act
            IDirectoryInfo info = directory.CreateDirectory(source);

            info.MoveTo(target);

            //assert
            Assert.IsTrue(info.Exists);

            // clean
            info.Delete();
        }
コード例 #5
0
        public void Create_two_directories_and_then_delete_them()
        {
            string path = new DirectoryWrap().GetCurrentDirectory();
            IDirectoryInfo directoryInfoWrap = new DirectoryInfoWrap(path);
            IDirectoryInfo[] directoriesBefore = directoryInfoWrap.GetDirectories();

            directoryInfoWrap.CreateSubdirectory("Dir1");
            directoryInfoWrap.CreateSubdirectory("Dir2");
            IDirectoryInfo[] directoriesAfterCreate = directoryInfoWrap.GetDirectories();

            Assert.AreEqual("Dir1", directoriesAfterCreate[0].Name);
            Assert.AreEqual("Dir2", directoriesAfterCreate[1].Name);
            directoriesAfterCreate[0].Delete();
            directoriesAfterCreate[1].Delete();

            var directoriesAfterDelete = directoryInfoWrap.GetDirectories();
            Assert.AreEqual(directoriesBefore.Length, directoriesAfterDelete.Length);
        }
コード例 #6
0
        /// <summary>
        /// Checks to see if a directory path exists.
        /// </summary>
        /// <param name="directoryPath">input directory path.</param>
        /// <returns>true if directory path exists. False if not exist.</returns>
        public bool DirectoryExists(string directoryPath)
        {
            var dirWrap = new DirectoryWrap();

            return(dirWrap.Exists(directoryPath));
        }