<component>
<implementation-class>com.intellij.completion.FeatureManagerImpl</implementation-class>
- <interface-class>com.intellij.completion.FeatureManager</interface-class>
+ <interface-class>com.jetbrains.completion.ranker.features.FeatureManager</interface-class>
</component>
</application-components>
+++ /dev/null
-package com.intellij.completion
-
-import com.intellij.openapi.application.ApplicationManager
-import com.jetbrains.completion.ranker.features.*
-
-/**
- * @author Vitaliy.Bibaev
- */
-interface FeatureManager {
- val binaryFactors: List<BinaryFeature>
- val doubleFactors: List<DoubleFeature>
- val categorialFactors: List<CatergorialFeature>
- val ignoredFactors: Set<String>
-
- val completionFactors: CompletionFactors
- val featureArrayLength: Int
-
- fun isUserFeature(name: String): Boolean
- fun allFeatures(): List<Feature>
-
- companion object {
- fun getInstance(): FeatureManager = ApplicationManager.getApplication().getComponent(FeatureManager::class.java)
- }
-}
\ No newline at end of file
package com.intellij.completion
+import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.components.ApplicationComponent
import com.jetbrains.completion.ranker.features.*
* @author Vitaliy.Bibaev
*/
class FeatureManagerImpl : FeatureManager, ApplicationComponent {
+ companion object {
+ fun getInstance(): FeatureManager = ApplicationManager.getApplication().getComponent(FeatureManager::class.java)
+ }
+
private var arrayLength = 0
override lateinit var binaryFactors: List<BinaryFeature> private set
*/
package com.intellij.sorting
-import com.intellij.completion.FeatureManager
+import com.jetbrains.completion.ranker.features.FeatureManager
import com.intellij.openapi.components.ApplicationComponent
import com.intellij.openapi.components.ServiceManager
import com.jetbrains.completion.ranker.CompletionRanker
package com.intellij.stats.personalization.impl
import com.intellij.codeInsight.completion.CompletionType
-import com.intellij.completion.FeatureManager
+import com.intellij.completion.FeatureManagerImpl
import com.intellij.openapi.components.ProjectComponent
import com.intellij.openapi.diagnostic.Logger
import com.intellij.stats.personalization.UserFactor
private val userFactors = mutableMapOf<String, UserFactor>()
init {
// TODO: register all factors here
- FeatureManager.getInstance() // TODO: register feature-derived factors
+ FeatureManagerImpl.getInstance() // TODO: register feature-derived factors
// user factors
register(ExplicitCompletionRatio())