Extend(string extName, string destPath, string branchName) { var ext = PyRevit.FindRegisteredExtension(extName); if (ext != null) { logger.Debug("Matching extension found \"{0}\"", ext.Name); PyRevit.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)); } } }
ProcessExtensionInfoCommands(string extName, bool info, bool help, bool open) { if (extName != null) { var ext = PyRevit.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 = PyRevit.GetInstalledExtension(extName); CommonUtils.OpenInExplorer(instExt.InstallPath); } } } }
GetSetExtensionOrigin(string extName, string originUrl, bool reset) { if (extName != null) { var extension = PyRevit.GetInstalledExtension(extName); if (extension != null) { if (reset) { var ext = PyRevit.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)); } } } }
public PyRevitExtension(string extensionPath) { InstallPath = extensionPath; var extDefFile = GetExtensionDefFilePath(InstallPath); if (CommonUtils.VerifyFile(extDefFile)) { Definition = new PyRevitExtensionDefinition(extDefFile); } else { // if def file is not found try to grab the definitions from registered extensions try { Definition = PyRevit.FindRegisteredExtension(Name); } catch { // let Definition be null if extension is not registered } } }