rewrite Java classes to Kotlin

This commit is contained in:
Jakub Chrzanowski
2020-04-28 15:23:14 +02:00
parent 3885874e7b
commit 3f83267e99
10 changed files with 67 additions and 112 deletions

View File

@@ -0,0 +1,16 @@
package org.jetbrains.plugins.template
import com.intellij.DynamicBundle
import org.jetbrains.annotations.NonNls
import org.jetbrains.annotations.PropertyKey
@NonNls
private const val BUNDLE = "messages.TemplateBundle"
object TemplateBundle : DynamicBundle(BUNDLE) {
@JvmStatic
fun message(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any): String = getMessage(key, *params)
@JvmStatic
fun messagePointer(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any): () -> String = { message(key, *params) }
}

View File

@@ -0,0 +1,23 @@
package org.jetbrains.plugins.template.listeners
import com.intellij.ide.plugins.DynamicPluginListener
import com.intellij.ide.plugins.IdeaPluginDescriptor
import com.intellij.openapi.components.ServiceManager
import org.jetbrains.plugins.template.services.MyApplicationService
internal class MyDynamicPluginListener : DynamicPluginListener {
override fun beforePluginLoaded(pluginDescriptor: IdeaPluginDescriptor) {
ServiceManager.getService(MyApplicationService::class.java)
}
override fun pluginLoaded(pluginDescriptor: IdeaPluginDescriptor) {
println("xx")
}
override fun beforePluginUnload(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) {}
override fun checkUnloadPlugin(pluginDescriptor: IdeaPluginDescriptor) {
}
override fun pluginUnloaded(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) {}
}

View File

@@ -0,0 +1,11 @@
package org.jetbrains.plugins.template.listeners
import com.intellij.openapi.project.Project
import com.intellij.openapi.project.ProjectManagerListener
import org.jetbrains.plugins.template.services.MyProjectService
internal class MyProjectManagerListener : ProjectManagerListener {
override fun projectOpened(project: Project) {
project.getService(MyProjectService::class.java)
}
}

View File

@@ -0,0 +1,7 @@
package org.jetbrains.plugins.template.services
class MyApplicationService {
init {
println("MyApplicationService")
}
}

View File

@@ -0,0 +1,10 @@
package org.jetbrains.plugins.template.services
import com.intellij.openapi.project.Project
import org.jetbrains.plugins.template.TemplateBundle
class MyProjectService(project: Project) {
init {
println(TemplateBundle.message("projectService", project.name))
}
}