示例#1
0
        Extend(string extName, string destPath, string branchName)
        {
            var ext = PyRevitExtensions.FindRegisteredExtension(extName);

            if (ext != null)
            {
                logger.Debug("Matching extension found \"{0}\"", ext.Name);
                PyRevitExtensions.InstallExtension(ext, destPath, branchName);
            }
            else
            {
                if (Errors.LatestError == ErrorCodes.MoreThanOneItemMatched)
                {
                    throw new PyRevitException(
                              string.Format("More than one extension matches the name \"{0}\"",
                                            extName));
                }
                else
                {
                    throw new PyRevitException(
                              string.Format("Not valid extension name or repo url \"{0}\"",
                                            extName));
                }
            }
        }
示例#2
0
 ProcessExtensionInfoCommands(string extName, bool info, bool help, bool open)
 {
     if (extName != null)
     {
         var ext = PyRevitExtensions.FindRegisteredExtension(extName);
         if (Errors.LatestError == ErrorCodes.MoreThanOneItemMatched)
         {
             logger.Warn("More than one extension matches the search pattern \"{0}\"", extName);
         }
         else
         {
             if (info)
             {
                 Console.WriteLine(ext.ToString());
             }
             else if (help)
             {
                 Process.Start(ext.Website);
             }
             else if (open)
             {
                 var instExt = PyRevitExtensions.GetInstalledExtension(extName);
                 CommonUtils.OpenInExplorer(instExt.InstallPath);
             }
         }
     }
 }
示例#3
0
 GetSetExtensionOrigin(string extName, string originUrl, bool reset)
 {
     if (extName != null)
     {
         var extension = PyRevitExtensions.GetInstalledExtension(extName);
         if (extension != null)
         {
             if (reset)
             {
                 var ext = PyRevitExtensions.FindRegisteredExtension(extension.Name);
                 if (ext != null)
                 {
                     extension.SetOrigin(ext.Url);
                 }
                 else
                 {
                     throw new PyRevitException(
                               string.Format("Can not find the original url in the extension " +
                                             "database for extension \"{0}\"",
                                             extension.Name));
                 }
             }
             else if (originUrl != null)
             {
                 extension.SetOrigin(originUrl);
             }
             else
             {
                 Console.WriteLine(string.Format("Extension \"{0}\" origin is at \"{1}\"",
                                                 extension.Name, extension.Origin));
             }
         }
     }
 }
        ProcessExtensionInfoCommands(string extName, bool info, bool help)
        {
            if (extName != null)
            {
                var extDef = PyRevitExtensions.FindRegisteredExtension(extName);

                if (Errors.LatestError == ErrorCodes.MoreThanOneItemMatched)
                {
                    logger.Warn("More than one extension matches the search pattern \"{0}\"", extName);
                }
                else
                {
                    if (info && extDef != null)
                    {
                        Console.WriteLine(extDef.ToString());
                    }
                    else if (help && extDef != null)
                    {
                        Process.Start(extDef.Website);
                    }
                }
            }
        }