private void EnsureWorkingFolder(ServiceNodeHandler srvNode)
        {
            string baseUrl      = Path.Combine(Application.StartupPath, "typescript");
            var    accessPoint  = EnsureValidName(MainForm.CurrentProject.DevSite.AccessPoint);
            var    contractName = EnsureValidName(srvNode.ContractName);
            var    packageName  = EnsureValidName(srvNode.PackageName);
            var    serviceName  = EnsureValidName(srvNode.ServiceName);

            _working_dir  = Path.Combine(baseUrl, accessPoint, contractName, packageName, serviceName);
            _rc_dir       = Path.Combine(_working_dir, "rc");
            _src_dir      = Path.Combine(_working_dir, "src");
            _template_dir = Path.Combine(baseUrl, "template");

            if (!Directory.Exists(_working_dir))
            {
                Directory.CreateDirectory(_working_dir);
            }

            if (!Directory.Exists(_rc_dir))
            {
                Directory.CreateDirectory(_rc_dir);
            }

            if (!Directory.Exists(_src_dir))
            {
                Directory.CreateDirectory(_src_dir);
            }
        }
 public JavaScriptTranspilerHandler(ServiceNodeHandler srvNode,
                                    XmlElement source,
                                    bool useTypeScript)
 {
     _use_typescript = useTypeScript;
     _ui_context     = TaskScheduler.FromCurrentSynchronizationContext();
     _source         = source;
     EnsureWorkingFolder(srvNode); //確保工作目錄存在。
     PrepareWorkingFolder();       //準備工作目錄。
     CopySourceToWorkingFolder();  //複製程式碼到工作目錄。
     CreateFileSystemWatcher();    //建立檔案系統監控器。
 }
        internal void ReloadService(string serviceName)
        {
            this.Reload();

            foreach (TreeNode node in this.Node.Nodes)
            {
                ServiceNodeHandler sh = node.Tag as ServiceNodeHandler;
                if (sh.ServiceName != serviceName)
                {
                    continue;
                }

                this.Node.TreeView.SelectedNode = node;
            }
        }
示例#4
0
 public ServiceUIEditable(string documentName, ServiceNodeHandler serviceNode)
 {
     this.DocumentName = documentName;
     _serviceNode      = serviceNode;
 }
 public ServiceUIEditable(string documentName, ServiceNodeHandler serviceNode)
 {
     this.DocumentName = documentName;
     _serviceNode = serviceNode;
 }
 internal void DeleteService(ServiceNodeHandler serviceNodeHandler)
 {
     this.Package.DeleteService(serviceNodeHandler.ServiceName);
     this.Node.Nodes.Remove(serviceNodeHandler.Node);
 }