mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IJPL-177442 Changes required for rebase.
It was impossible to solve the conflicts, because PluginUiModel was changed in almost all following commits. (cherry picked from commit c234adb6a5d3d8c46475561c345d3b74758adcd6) IJ-MR-163725 GitOrigin-RevId: 8c0216b0cfebaca71a5b06884469edece71628de
This commit is contained in:
committed by
intellij-monorepo-bot
parent
893680351e
commit
1d7ac70529
@@ -197,7 +197,6 @@ bf:com.intellij.openapi.extensions.PluginId$$serializer
|
||||
- f:deserialize(kotlinx.serialization.encoding.Decoder):com.intellij.openapi.extensions.PluginId
|
||||
- f:getDescriptor():kotlinx.serialization.descriptors.SerialDescriptor
|
||||
- f:serialize(kotlinx.serialization.encoding.Encoder,com.intellij.openapi.extensions.PluginId):V
|
||||
- typeParametersSerializers():kotlinx.serialization.KSerializer[]
|
||||
f:com.intellij.openapi.extensions.PluginId$Companion
|
||||
- f:findId(java.lang.String):com.intellij.openapi.extensions.PluginId
|
||||
- f:findId(java.lang.String[]):com.intellij.openapi.extensions.PluginId
|
||||
|
||||
@@ -3429,19 +3429,6 @@ e:com.intellij.ide.plugins.PluginNode$Status
|
||||
- sf:UNKNOWN:com.intellij.ide.plugins.PluginNode$Status
|
||||
- s:valueOf(java.lang.String):com.intellij.ide.plugins.PluginNode$Status
|
||||
- s:values():com.intellij.ide.plugins.PluginNode$Status[]
|
||||
f:com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
- <init>(java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean):V
|
||||
- b:<init>(java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean,I,kotlin.jvm.internal.DefaultConstructorMarker):V
|
||||
- f:component1():java.lang.String
|
||||
- f:component2():java.lang.String
|
||||
- f:copy(java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean):com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
- bs:copy$default(com.intellij.ide.plugins.PluginNodeVendorDetails,java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean,I,java.lang.Object):com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
- equals(java.lang.Object):Z
|
||||
- f:getName():java.lang.String
|
||||
- f:getUrl():java.lang.String
|
||||
- hashCode():I
|
||||
- f:isTrader():Z
|
||||
- f:isVerified():Z
|
||||
f:com.intellij.ide.plugins.PluginStateManager
|
||||
- <init>():V
|
||||
- s:addStateListener(com.intellij.ide.plugins.PluginStateListener):V
|
||||
@@ -3575,14 +3562,6 @@ f:com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate
|
||||
- f:getPluginId():java.lang.String
|
||||
- f:getVersion():java.lang.String
|
||||
- hashCode():I
|
||||
bf:com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate$$serializer
|
||||
- kotlinx.serialization.internal.GeneratedSerializer
|
||||
- sf:INSTANCE:com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate$$serializer
|
||||
- f:childSerializers():kotlinx.serialization.KSerializer[]
|
||||
- f:deserialize(kotlinx.serialization.encoding.Decoder):com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate
|
||||
- f:getDescriptor():kotlinx.serialization.descriptors.SerialDescriptor
|
||||
- f:serialize(kotlinx.serialization.encoding.Encoder,com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate):V
|
||||
- typeParametersSerializers():kotlinx.serialization.KSerializer[]
|
||||
f:com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate$Companion
|
||||
- f:serializer():kotlinx.serialization.KSerializer
|
||||
f:com.intellij.ide.plugins.marketplace.MarketplaceRequestsKt
|
||||
|
||||
@@ -216,6 +216,29 @@ com.intellij.ide.plugins.PluginManagerMain$PluginEnabler
|
||||
- enable(java.util.Collection):Z
|
||||
- enableById(java.util.Set):Z
|
||||
- isDisabled(com.intellij.openapi.extensions.PluginId):Z
|
||||
f:com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
- sf:Companion:com.intellij.ide.plugins.PluginNodeVendorDetails$Companion
|
||||
- <init>(java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean):V
|
||||
- b:<init>(java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean,I,kotlin.jvm.internal.DefaultConstructorMarker):V
|
||||
- f:component1():java.lang.String
|
||||
- f:component2():java.lang.String
|
||||
- f:copy(java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean):com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
- bs:copy$default(com.intellij.ide.plugins.PluginNodeVendorDetails,java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean,I,java.lang.Object):com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
- equals(java.lang.Object):Z
|
||||
- f:getName():java.lang.String
|
||||
- f:getUrl():java.lang.String
|
||||
- hashCode():I
|
||||
- f:isTrader():Z
|
||||
- f:isVerified():Z
|
||||
bf:com.intellij.ide.plugins.PluginNodeVendorDetails$$serializer
|
||||
- kotlinx.serialization.internal.GeneratedSerializer
|
||||
- sf:INSTANCE:com.intellij.ide.plugins.PluginNodeVendorDetails$$serializer
|
||||
- f:childSerializers():kotlinx.serialization.KSerializer[]
|
||||
- f:deserialize(kotlinx.serialization.encoding.Decoder):com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
- f:getDescriptor():kotlinx.serialization.descriptors.SerialDescriptor
|
||||
- f:serialize(kotlinx.serialization.encoding.Encoder,com.intellij.ide.plugins.PluginNodeVendorDetails):V
|
||||
f:com.intellij.ide.plugins.PluginNodeVendorDetails$Companion
|
||||
- f:serializer():kotlinx.serialization.KSerializer
|
||||
com.intellij.ide.plugins.PluginStateListener
|
||||
- a:install(com.intellij.ide.plugins.IdeaPluginDescriptor):V
|
||||
- uninstall(com.intellij.ide.plugins.IdeaPluginDescriptor):V
|
||||
@@ -230,6 +253,13 @@ com.intellij.ide.plugins.auth.PluginRepositoryAuthProvider
|
||||
- sf:EP_NAME:com.intellij.openapi.extensions.ExtensionPointName
|
||||
- a:canHandle(java.lang.String):Z
|
||||
- a:getAuthHeaders(java.lang.String):java.util.Map
|
||||
bf:com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate$$serializer
|
||||
- kotlinx.serialization.internal.GeneratedSerializer
|
||||
- sf:INSTANCE:com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate$$serializer
|
||||
- f:childSerializers():kotlinx.serialization.KSerializer[]
|
||||
- f:deserialize(kotlinx.serialization.encoding.Decoder):com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate
|
||||
- f:getDescriptor():kotlinx.serialization.descriptors.SerialDescriptor
|
||||
- f:serialize(kotlinx.serialization.encoding.Encoder,com.intellij.ide.plugins.marketplace.IdeCompatibleUpdate):V
|
||||
com.intellij.ide.startup.StartupActionScriptManager$ActionCommand
|
||||
- a:execute():V
|
||||
com.intellij.ide.trustedProjects.TrustedProjectsLocator
|
||||
|
||||
@@ -2,10 +2,12 @@
|
||||
package com.intellij.ide.plugins
|
||||
|
||||
import com.intellij.openapi.util.NlsSafe
|
||||
import kotlinx.serialization.Serializable
|
||||
|
||||
/**
|
||||
* Marketplace vendor details.
|
||||
*/
|
||||
@Serializable
|
||||
data class PluginNodeVendorDetails(
|
||||
@NlsSafe val name: String,
|
||||
val url: String? = null,
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
package com.intellij.ide.plugins.api
|
||||
|
||||
import com.intellij.ide.plugins.IdeaPluginDescriptor
|
||||
import com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
import com.intellij.ide.plugins.newui.PluginDependencyModel
|
||||
import com.intellij.ide.plugins.newui.PluginSource
|
||||
import com.intellij.ide.plugins.newui.PluginUiModel
|
||||
@@ -44,6 +45,7 @@ class PluginDto(
|
||||
|
||||
override var releaseVersion: Int = 0
|
||||
override var displayCategory: String? = null
|
||||
override var vendorDetails: PluginNodeVendorDetails? = null
|
||||
override var reviewComments: ReviewsPageContainer? = null
|
||||
|
||||
// Mutable properties
|
||||
@@ -53,9 +55,6 @@ class PluginDto(
|
||||
override var documentationUrl: String? = null
|
||||
override var sourceCodeUrl: String? = null
|
||||
override var reportPluginUrl: String? = null
|
||||
override var verifiedName: String? = null
|
||||
override var isVerified: Boolean = false
|
||||
override var isTrader: Boolean = false
|
||||
override var screenShots: List<String>? = null
|
||||
override var externalPluginIdForScreenShots: String? = null
|
||||
override var externalPluginId: String? = null
|
||||
@@ -121,9 +120,7 @@ class PluginDto(
|
||||
documentationUrl = model.documentationUrl
|
||||
sourceCodeUrl = model.sourceCodeUrl
|
||||
reportPluginUrl = model.reportPluginUrl
|
||||
verifiedName = model.verifiedName
|
||||
isVerified = model.isVerified
|
||||
isTrader = model.isTrader
|
||||
vendorDetails = model.vendorDetails
|
||||
reviewComments = model.reviewComments
|
||||
screenShots = model.screenShots?.toList()
|
||||
externalPluginIdForScreenShots = model.externalPluginIdForScreenShots
|
||||
|
||||
+3
-68
@@ -1,24 +1,18 @@
|
||||
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.plugins.api
|
||||
|
||||
import com.intellij.ide.plugins.ContainerDescriptor
|
||||
import com.intellij.ide.plugins.ContentModule
|
||||
import com.intellij.ide.plugins.IdeaPluginDescriptorEx
|
||||
import com.intellij.ide.plugins.ModuleDependencies
|
||||
import com.intellij.ide.plugins.ModuleLoadingRule
|
||||
import com.intellij.ide.plugins.IdeaPluginDescriptor
|
||||
import com.intellij.ide.plugins.PluginDependencyImpl
|
||||
import com.intellij.ide.plugins.PluginDependency
|
||||
import com.intellij.openapi.extensions.ExtensionDescriptor
|
||||
import com.intellij.openapi.extensions.PluginId
|
||||
import com.intellij.openapi.util.NlsSafe
|
||||
import com.intellij.platform.plugins.parser.impl.elements.ActionElement
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
import org.jetbrains.annotations.Nls
|
||||
import java.nio.file.Path
|
||||
import java.util.Date
|
||||
|
||||
@ApiStatus.Internal
|
||||
class PluginDtoDescriptorWrapper(private val pluginDto: PluginDto) : IdeaPluginDescriptorEx {
|
||||
class PluginDtoDescriptorWrapper(private val pluginDto: PluginDto) : IdeaPluginDescriptor {
|
||||
|
||||
private val dependenciesList: List<PluginDependency> by lazy {
|
||||
pluginDto.dependencies.map {
|
||||
@@ -102,70 +96,11 @@ class PluginDtoDescriptorWrapper(private val pluginDto: PluginDto) : IdeaPluginD
|
||||
throw UnsupportedOperationException("No direct mapping for pluginClassLoader in PluginDto")
|
||||
}
|
||||
|
||||
override val moduleName: String?
|
||||
get() = throw UnsupportedOperationException("No direct mapping for moduleName in PluginDto")
|
||||
|
||||
override val moduleLoadingRule: ModuleLoadingRule
|
||||
get() = throw UnsupportedOperationException("No direct mapping for moduleLoadingRule in PluginDto")
|
||||
|
||||
override val incompatiblePlugins: List<PluginId>
|
||||
get() = throw UnsupportedOperationException("No direct mapping for incompatiblePlugins in PluginDto")
|
||||
|
||||
override val pluginAliases: List<PluginId>
|
||||
get() = throw UnsupportedOperationException("No direct mapping for pluginAliases in PluginDto")
|
||||
|
||||
override val moduleDependencies: ModuleDependencies
|
||||
get() = throw UnsupportedOperationException("No direct mapping for moduleDependencies in PluginDto")
|
||||
|
||||
override val packagePrefix: String?
|
||||
get() = throw UnsupportedOperationException("No direct mapping for packagePrefix in PluginDto")
|
||||
|
||||
override val contentModules: List<ContentModule>
|
||||
get() = throw UnsupportedOperationException("No direct mapping for contentModules in PluginDto")
|
||||
|
||||
override val appContainerDescriptor: ContainerDescriptor
|
||||
get() = throw UnsupportedOperationException("No direct mapping for appContainerDescriptor in PluginDto")
|
||||
|
||||
override val projectContainerDescriptor: ContainerDescriptor
|
||||
get() = throw UnsupportedOperationException("No direct mapping for projectContainerDescriptor in PluginDto")
|
||||
|
||||
override val moduleContainerDescriptor: ContainerDescriptor
|
||||
get() = throw UnsupportedOperationException("No direct mapping for moduleContainerDescriptor in PluginDto")
|
||||
|
||||
override val extensions: Map<String, List<ExtensionDescriptor>>
|
||||
get() = throw UnsupportedOperationException("No direct mapping for extensions in PluginDto")
|
||||
|
||||
override val actions: List<ActionElement>
|
||||
get() = throw UnsupportedOperationException("No direct mapping for actions in PluginDto")
|
||||
|
||||
override val isUseIdeaClassLoader: Boolean
|
||||
get() = throw UnsupportedOperationException("No direct mapping for isUseIdeaClassLoader in PluginDto")
|
||||
|
||||
override val isIndependentFromCoreClassLoader: Boolean
|
||||
get() = throw UnsupportedOperationException("No direct mapping for isIndependentFromCoreClassLoader in PluginDto")
|
||||
|
||||
override val useCoreClassLoader: Boolean
|
||||
get() = throw UnsupportedOperationException("No direct mapping for useCoreClassLoader in PluginDto")
|
||||
|
||||
override var isMarkedForLoading: Boolean = pluginDto.isEnabled
|
||||
|
||||
@Deprecated("Deprecated in Java")
|
||||
override fun isEnabled(): Boolean = pluginDto.isEnabled
|
||||
|
||||
@Deprecated("Deprecated in Java")
|
||||
override fun setEnabled(enabled: Boolean) {
|
||||
// Cannot modify the PluginDto directly here
|
||||
isMarkedForLoading = enabled
|
||||
throw UnsupportedOperationException("Write operations are not allowed here")
|
||||
}
|
||||
|
||||
override fun toString(): String =
|
||||
"PluginDtoDescriptorWrapper(name=${getName()}, id=${getPluginId()}, version=${getVersion()}, isBundled=${isBundled()})"
|
||||
|
||||
override fun equals(other: Any?): Boolean {
|
||||
if (this === other) return true
|
||||
if (other !is IdeaPluginDescriptorEx) return false
|
||||
return getPluginId() == other.pluginId
|
||||
}
|
||||
|
||||
override fun hashCode(): Int = getPluginId().hashCode()
|
||||
}
|
||||
+24
-24
@@ -4,6 +4,7 @@ package com.intellij.ide.plugins.marketplace
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
|
||||
import com.fasterxml.jackson.annotation.JsonProperty
|
||||
import com.intellij.ide.plugins.PluginNode
|
||||
import com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
import com.intellij.ide.plugins.RepositoryHelper
|
||||
import com.intellij.ide.plugins.advertiser.PluginData
|
||||
import com.intellij.ide.plugins.newui.PluginUiModel
|
||||
@@ -30,7 +31,7 @@ data class IdeCompatibleUpdate(
|
||||
val externalPluginId: String = "",
|
||||
@get:JsonProperty("pluginXmlId")
|
||||
val pluginId: String = "",
|
||||
val version: String = ""
|
||||
val version: String = "",
|
||||
)
|
||||
|
||||
/**
|
||||
@@ -55,7 +56,7 @@ data class IntellijUpdateMetadata(
|
||||
val until: String? = null,
|
||||
val productCode: String? = null,
|
||||
val url: String? = null,
|
||||
val size: Int = 0
|
||||
val size: Int = 0,
|
||||
) {
|
||||
fun toUiModel(): PluginUiModel {
|
||||
val pluginId = PluginId.getId(id)
|
||||
@@ -107,7 +108,7 @@ class MarketplaceSearchPluginData(
|
||||
val externalPluginId: String? = null,
|
||||
val downloads: String = "",
|
||||
@get:JsonProperty("nearestUpdate")
|
||||
val nearestUpdate: NearestUpdate? = null
|
||||
val nearestUpdate: NearestUpdate? = null,
|
||||
) {
|
||||
fun toPluginNode(): PluginNode {
|
||||
val pluginNode = PluginNode(PluginId.getId(id))
|
||||
@@ -130,7 +131,7 @@ class MarketplaceSearchPluginData(
|
||||
builder.setName(name)
|
||||
builder.setRating("%.2f".format(Locale.US, rating))
|
||||
builder.setDownloads(downloads)
|
||||
builder.setOrganization(organization)
|
||||
builder.setVendorDetails(organization)
|
||||
builder.setExternalPluginId(externalPluginId)
|
||||
builder.setExternalUpdateId(externalUpdateId ?: nearestUpdate?.id)
|
||||
builder.setIsPaid(isPaid)
|
||||
@@ -159,7 +160,7 @@ class NearestUpdate(
|
||||
@get:JsonProperty("updateCompatibility")
|
||||
val updateCompatibility: Map<String, Long> = emptyMap(),
|
||||
@get:JsonProperty("isCompatible")
|
||||
val compatible: Boolean = true
|
||||
val compatible: Boolean = true,
|
||||
)
|
||||
|
||||
/**
|
||||
@@ -205,7 +206,7 @@ internal class MarketplaceBrokenPlugin(
|
||||
val since: String? = null,
|
||||
val until: String? = null,
|
||||
val originalSince: String? = null,
|
||||
val originalUntil: String? = null
|
||||
val originalUntil: String? = null,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@@ -217,7 +218,7 @@ data class PluginReviewComment(
|
||||
val comment: @Nls String = "",
|
||||
val rating: Int = 0,
|
||||
val author: ReviewCommentAuthor = ReviewCommentAuthor(),
|
||||
val plugin: ReviewCommentPlugin = ReviewCommentPlugin()
|
||||
val plugin: ReviewCommentPlugin = ReviewCommentPlugin(),
|
||||
) {
|
||||
fun getDate(): Long = parseLong(cdate, 0)
|
||||
}
|
||||
@@ -226,14 +227,14 @@ data class PluginReviewComment(
|
||||
@ApiStatus.Internal
|
||||
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||
data class ReviewCommentAuthor(
|
||||
val name: @Nls String = ""
|
||||
val name: @Nls String = "",
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@ApiStatus.Internal
|
||||
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||
data class ReviewCommentPlugin(
|
||||
val link: @Nls String = ""
|
||||
val link: @Nls String = "",
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@@ -241,7 +242,7 @@ data class ReviewCommentPlugin(
|
||||
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||
data class SalesMetadata(
|
||||
val trialPeriod: Int? = null,
|
||||
val customTrialPeriods: List<CustomTrialPeriod>? = null
|
||||
val customTrialPeriods: List<CustomTrialPeriod>? = null,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@@ -249,7 +250,7 @@ data class SalesMetadata(
|
||||
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||
data class CustomTrialPeriod(
|
||||
@JsonProperty("productCode") val productCode: String,
|
||||
@JsonProperty("trialPeriod") val trialPeriod: Int
|
||||
@JsonProperty("trialPeriod") val trialPeriod: Int,
|
||||
)
|
||||
|
||||
@Serializable
|
||||
@@ -264,7 +265,7 @@ data class IntellijPluginMetadata(
|
||||
val documentationUrl: String? = null,
|
||||
val sourceCodeUrl: String? = null,
|
||||
val reportPluginUrl: String? = null,
|
||||
val salesInfo: SalesMetadata? = null
|
||||
val salesInfo: SalesMetadata? = null,
|
||||
) {
|
||||
|
||||
fun toPluginNode(pluginNode: PluginNode) {
|
||||
@@ -283,32 +284,31 @@ data class IntellijPluginMetadata(
|
||||
pluginNode.sourceCodeUrl = sourceCodeUrl
|
||||
pluginNode.reportPluginUrl = reportPluginUrl
|
||||
pluginNode.defaultTrialPeriod = salesInfo?.trialPeriod
|
||||
pluginNode.setCustomTrialPeriodMap(salesInfo?.customTrialPeriods?.associate {
|
||||
p -> p.productCode to p.trialPeriod
|
||||
pluginNode.setCustomTrialPeriodMap(salesInfo?.customTrialPeriods?.associate { p ->
|
||||
p.productCode to p.trialPeriod
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ApiStatus.Internal
|
||||
fun toPluginUiModel(model: PluginUiModel) {
|
||||
if (vendor != null) {
|
||||
model.verifiedName = vendor.name
|
||||
model.isVerified = vendor.verified
|
||||
model.isTrader = vendor.trader
|
||||
val details = PluginNodeVendorDetails(vendor.name, vendor.url, vendor.trader, vendor.verified)
|
||||
model.vendorDetails = details
|
||||
}
|
||||
|
||||
|
||||
model.forumUrl = forumUrl
|
||||
model.licenseUrl = licenseUrl
|
||||
model.bugtrackerUrl = bugtrackerUrl
|
||||
model.documentationUrl = documentationUrl
|
||||
model.sourceCodeUrl = sourceCodeUrl
|
||||
model.reportPluginUrl = reportPluginUrl
|
||||
|
||||
|
||||
screenshots?.let { model.screenShots = it }
|
||||
|
||||
|
||||
model.defaultTrialPeriod = salesInfo?.trialPeriod
|
||||
model.customTrialPeriods = salesInfo?.customTrialPeriods?.associate {
|
||||
p -> p.productCode to p.trialPeriod
|
||||
model.customTrialPeriods = salesInfo?.customTrialPeriods?.associate { p ->
|
||||
p.productCode to p.trialPeriod
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -322,5 +322,5 @@ data class PluginVendorMetadata(
|
||||
@get:JsonProperty("isTrader")
|
||||
val trader: Boolean = false,
|
||||
@get:JsonProperty("isVerified")
|
||||
val verified: Boolean = false
|
||||
val verified: Boolean = false,
|
||||
)
|
||||
+1
-1
@@ -402,7 +402,7 @@ object DefaultUiPluginManagerController : UiPluginManagerController {
|
||||
for (pluginId in requiredPluginIds) {
|
||||
var result: IdeaPluginDescriptor? = plugins.find { pluginId == it.pluginId }
|
||||
if (result == null && looksLikePlatformPluginAlias(pluginId)) {
|
||||
result = plugins.find { it is IdeaPluginDescriptorEx && it.pluginAliases.contains(pluginId) }
|
||||
result = plugins.find { it is IdeaPluginDescriptorImpl && it.pluginAliases.contains(pluginId) }
|
||||
if (result != null) {
|
||||
session.pluginStates[pluginId] = PluginEnabledState.ENABLED
|
||||
pluginsToEnable.add(pluginId)
|
||||
|
||||
+11
-9
@@ -1,16 +1,15 @@
|
||||
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.plugins.newui
|
||||
|
||||
import com.intellij.ide.plugins.PluginDependency
|
||||
import com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
import com.intellij.ide.plugins.api.PluginDto
|
||||
import com.intellij.openapi.extensions.PluginId
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Date
|
||||
import java.util.Locale
|
||||
|
||||
@ApiStatus.Internal
|
||||
class PluginDtoModelBuilder(pluginId: PluginId): PluginUiModelBuilder {
|
||||
class PluginDtoModelBuilder(pluginId: PluginId) : PluginUiModelBuilder {
|
||||
private val resultDto = PluginDto(null, pluginId)
|
||||
|
||||
override fun setId(id: String): PluginDtoModelBuilder {
|
||||
@@ -103,7 +102,8 @@ class PluginDtoModelBuilder(pluginId: PluginId): PluginUiModelBuilder {
|
||||
try {
|
||||
val format = SimpleDateFormat("yyyy-MM-dd", Locale.US)
|
||||
resultDto.date = format.parse(date).time
|
||||
} catch (e: Exception) {
|
||||
}
|
||||
catch (e: Exception) {
|
||||
// If date parsing fails, leave date as 0
|
||||
}
|
||||
return this
|
||||
@@ -132,11 +132,6 @@ class PluginDtoModelBuilder(pluginId: PluginId): PluginUiModelBuilder {
|
||||
return this
|
||||
}
|
||||
|
||||
override fun setOrganization(string: String?): PluginUiModelBuilder {
|
||||
resultDto.organization = string
|
||||
return this
|
||||
}
|
||||
|
||||
override fun setIsConverted(converted: Boolean): PluginUiModelBuilder {
|
||||
resultDto.isConverted = converted
|
||||
return this
|
||||
@@ -177,6 +172,13 @@ class PluginDtoModelBuilder(pluginId: PluginId): PluginUiModelBuilder {
|
||||
return this
|
||||
}
|
||||
|
||||
override fun setVendorDetails(organization: String?): PluginUiModelBuilder {
|
||||
if (organization != null) {
|
||||
resultDto.vendorDetails = PluginNodeVendorDetails(organization)
|
||||
}
|
||||
return this
|
||||
}
|
||||
|
||||
override fun build(): PluginUiModel {
|
||||
return resultDto
|
||||
}
|
||||
|
||||
@@ -79,6 +79,11 @@ class PluginNodeModelBuilder(private val pluginId: PluginId) : PluginUiModelBuil
|
||||
return this
|
||||
}
|
||||
|
||||
override fun setVendorDetails(organization: String?): PluginUiModelBuilder {
|
||||
pluginNode.setVendorDetails(organization)
|
||||
return this
|
||||
}
|
||||
|
||||
override fun setSize(size: String?): PluginUiModelBuilder {
|
||||
if (size != null) pluginNode.size = size
|
||||
return this
|
||||
@@ -130,11 +135,6 @@ class PluginNodeModelBuilder(private val pluginId: PluginId) : PluginUiModelBuil
|
||||
return this
|
||||
}
|
||||
|
||||
override fun setOrganization(string: String?): PluginUiModelBuilder {
|
||||
pluginNode.organization = string
|
||||
return this
|
||||
}
|
||||
|
||||
override fun setIsConverted(converted: Boolean): PluginUiModelBuilder {
|
||||
pluginNode.isConverted = converted
|
||||
return this
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.intellij.ide.plugins.newui
|
||||
|
||||
import com.intellij.ide.plugins.IdeaPluginDescriptor
|
||||
import com.intellij.ide.plugins.PluginManagerConfigurable
|
||||
import com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
import com.intellij.ide.plugins.api.ReviewsPageContainer
|
||||
import com.intellij.ide.plugins.getTags
|
||||
import com.intellij.openapi.extensions.PluginId
|
||||
@@ -80,15 +81,10 @@ interface PluginUiModel {
|
||||
|
||||
@get:NlsSafe
|
||||
var reportPluginUrl: String?
|
||||
@get:NlsSafe
|
||||
var verifiedName: String?
|
||||
|
||||
var isVerified: Boolean
|
||||
var isTrader: Boolean
|
||||
var reviewComments: ReviewsPageContainer?
|
||||
var screenShots: List<String>?
|
||||
|
||||
var externalPluginIdForScreenShots: String?
|
||||
var vendorDetails: PluginNodeVendorDetails?
|
||||
|
||||
@get:NlsSafe
|
||||
var downloadUrl: String?
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.intellij.ide.plugins.PluginManagementPolicy
|
||||
import com.intellij.ide.plugins.PluginManagerCore
|
||||
import com.intellij.ide.plugins.PluginManagerCore.getUnfulfilledOsRequirement
|
||||
import com.intellij.ide.plugins.PluginNode
|
||||
import com.intellij.ide.plugins.PluginNodeVendorDetails
|
||||
import com.intellij.ide.plugins.api.ReviewsPageContainer
|
||||
import com.intellij.ide.plugins.marketplace.PluginReviewComment
|
||||
import com.intellij.openapi.extensions.PluginId
|
||||
@@ -122,28 +123,14 @@ class PluginUiModelAdapter(
|
||||
pluginDescriptor.reportPluginUrl = value
|
||||
}
|
||||
}
|
||||
override var verifiedName: String?
|
||||
get() = if (pluginDescriptor is PluginNode) pluginDescriptor.verifiedName else null
|
||||
override var vendorDetails: PluginNodeVendorDetails?
|
||||
get() = if(pluginDescriptor is PluginNode) pluginDescriptor.vendorDetails else null
|
||||
set(value) {
|
||||
if (pluginDescriptor is PluginNode) {
|
||||
pluginDescriptor.verifiedName = value
|
||||
}
|
||||
}
|
||||
override var isVerified: Boolean
|
||||
get() = if (pluginDescriptor is PluginNode) pluginDescriptor.isVerified else false
|
||||
set(value) {
|
||||
if (pluginDescriptor is PluginNode) {
|
||||
pluginDescriptor.isVerified = value
|
||||
pluginDescriptor.vendorDetails = value
|
||||
}
|
||||
}
|
||||
|
||||
override var isTrader: Boolean
|
||||
get() = if (pluginDescriptor is PluginNode) pluginDescriptor.isTrader else false
|
||||
set(value) {
|
||||
if (pluginDescriptor is PluginNode) {
|
||||
pluginDescriptor.isTrader = value
|
||||
}
|
||||
}
|
||||
override var screenShots: List<String>?
|
||||
get() = if (pluginDescriptor is PluginNode) pluginDescriptor.screenShots else null
|
||||
set(value) {
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.plugins.newui
|
||||
|
||||
import com.intellij.ide.plugins.PluginDependency
|
||||
import com.intellij.openapi.extensions.PluginId
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
@@ -34,7 +33,6 @@ interface PluginUiModelBuilder {
|
||||
fun addDependency(id: String, optional: Boolean): PluginUiModelBuilder
|
||||
fun addTag(tag: String): PluginUiModelBuilder
|
||||
fun setIncomplete(incomplete: Boolean): PluginUiModelBuilder
|
||||
fun setOrganization(string: String?): PluginUiModelBuilder
|
||||
fun setIsConverted(converted: Boolean): PluginUiModelBuilder
|
||||
fun setIsPaid(isPaid: Boolean): PluginUiModelBuilder
|
||||
fun setIsFromMarketPlace(isFromMarketPlace: Boolean): PluginUiModelBuilder
|
||||
@@ -43,6 +41,7 @@ interface PluginUiModelBuilder {
|
||||
fun setTags(tags: List<String>?): PluginUiModelBuilder
|
||||
fun setDate(date: Long): PluginUiModelBuilder
|
||||
fun setRepositoryName(repositoryName: String): PluginUiModelBuilder
|
||||
fun setVendorDetails(organization: String?): PluginUiModelBuilder
|
||||
|
||||
fun build(): PluginUiModel
|
||||
}
|
||||
|
||||
+1
-1
@@ -121,7 +121,7 @@ final class PluginUpdateDialog extends DialogWrapper {
|
||||
node.setChangeNotes(model.getChangeNotes());
|
||||
node.setVersion(model.getVersion());
|
||||
node.setVendor(model.getVendor());
|
||||
node.setVendorDetails(descriptor.getOrganization())
|
||||
node.setVendorDetails(model.getOrganization());
|
||||
List<PluginDependencyImpl> dependencies =
|
||||
ContainerUtil.map(model.getDependencies(), it -> new PluginDependencyImpl(it.getPluginId(), null, it.isOptional()));
|
||||
node.setDependencies(dependencies);
|
||||
|
||||
+1
-2
@@ -332,7 +332,7 @@ open class PluginAdvertiserServiceImpl(
|
||||
.map { getSuggestionReason(it) }
|
||||
|
||||
if (suggestedFeatures.isNotEmpty()) {
|
||||
(descriptor as PluginNode).suggestedFeatures = suggestedFeatures
|
||||
(descriptor.getDescriptor() as? PluginNode)?.suggestedFeatures = suggestedFeatures
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -365,7 +365,6 @@ open class PluginAdvertiserServiceImpl(
|
||||
.setVersion(descriptor.version)
|
||||
.setVendor(descriptor.vendor)
|
||||
.setVendorDetails(descriptor.organization)
|
||||
.setDependencies(descriptor.dependencies)
|
||||
.setIsConverted(true)
|
||||
|
||||
descriptor.dependencies.forEach { builder.addDependency(it.pluginId.idString, it.isOptional) }
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
<compilerArguments>
|
||||
<stringArguments>
|
||||
<stringArg name="jvmTarget" arg="17" />
|
||||
<stringArg name="apiVersion" arg="2.1" />
|
||||
<stringArg name="languageVersion" arg="2.1" />
|
||||
<stringArg name="apiVersion" arg="2.2" />
|
||||
<stringArg name="languageVersion" arg="2.2" />
|
||||
</stringArguments>
|
||||
<arrayArguments>
|
||||
<arrayArg name="pluginClasspaths">
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
<compilerArguments>
|
||||
<stringArguments>
|
||||
<stringArg name="jvmTarget" arg="17" />
|
||||
<stringArg name="apiVersion" arg="2.1" />
|
||||
<stringArg name="languageVersion" arg="2.1" />
|
||||
<stringArg name="apiVersion" arg="2.2" />
|
||||
<stringArg name="languageVersion" arg="2.2" />
|
||||
</stringArguments>
|
||||
<arrayArguments>
|
||||
<arrayArg name="pluginClasspaths">
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
<compilerArguments>
|
||||
<stringArguments>
|
||||
<stringArg name="jvmTarget" arg="17" />
|
||||
<stringArg name="apiVersion" arg="2.1" />
|
||||
<stringArg name="languageVersion" arg="2.1" />
|
||||
<stringArg name="apiVersion" arg="2.2" />
|
||||
<stringArg name="languageVersion" arg="2.2" />
|
||||
</stringArguments>
|
||||
<arrayArguments>
|
||||
<arrayArg name="pluginClasspaths">
|
||||
|
||||
Reference in New Issue
Block a user