JetBrains / plugin-repository-rest-client

Apache License 2.0
21 stars 15 forks source link

Plugin Repository Rest Client

JetBrains team project

The client and command line interface for JetBrains Marketplace.

Examples

The code snippet below will initiate the instance of the JetBrains Marketplace repository.

val instance = PluginRepositoryFactory.create("https://plugins.jetbrains.com", "authToken")

Download plugin

instance.downloader.download("org.jetbrains.plugins.go", version, into, channel)

Upload update & new plugins

The code snippet below will init the instance of the JetBrains Marketplace repository. You need to provide a permanent hub token to authorize.

// upload update to existing plugin.
instance.uploader.upload("org.jetbrains.kotlin", file, channel, notes)

// upload new plugin into Marketplace repository.
instance.uploader.uploadNewPlugin(file, listOf("Inspection"), LicenseUrl.APACHE_2_0)

Plugin info


val pluginMeta = instance.pluginUpdateManager.getIntellijUpdateMetadata(pluginId, updateId)

val updateInfo = instance.pluginUpdateManager.getUpdatesByVersionAndFamily("org.jetbrains.kotlin", version, family)

val plugin = instance.pluginManager.getPlugin(pluginId)

Settings

MARKETPLACE_MAX_PARALLEL_CONNECTIONS system property - The maximum number of requests to execute concurrently. Default: 16.

Client

The org.jetbrains.intellij.pluginRepository.Client main class provides command line interface for uploading, downloading plugins on the plugin repository.

Published on Maven Central

https://search.maven.org/artifact/org.jetbrains.intellij/plugin-repository-rest-client