Skip to content

Commit

Permalink
cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
develar committed Jul 21, 2016
1 parent 2297622 commit 36fe649
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 18 deletions.
Expand Up @@ -18,9 +18,9 @@ package com.intellij.profile.codeInspection
import com.intellij.codeInsight.daemon.impl.SeverityRegistrar
import com.intellij.codeInspection.InspectionProfile
import com.intellij.codeInspection.ex.InspectionProfileImpl
import com.intellij.configurationStore.LazySchemeProcessor
import com.intellij.openapi.Disposable
import com.intellij.openapi.diagnostic.Logger
import com.intellij.openapi.options.LazySchemeProcessor
import com.intellij.openapi.options.SchemeManager
import com.intellij.openapi.options.SchemeState
import com.intellij.openapi.project.Project
Expand Down
Expand Up @@ -15,8 +15,8 @@
*/
package com.intellij.psi.impl.source.codeStyle;

import com.intellij.configurationStore.LazySchemeProcessor;
import com.intellij.configurationStore.SchemeDataHolder;
import com.intellij.openapi.options.LazySchemeProcessor;
import com.intellij.openapi.options.SchemeManager;
import com.intellij.openapi.options.SchemeManagerFactory;
import com.intellij.openapi.options.SchemeState;
Expand Down
Expand Up @@ -15,11 +15,8 @@
*/
package com.intellij.openapi.options

import com.intellij.configurationStore.SchemeDataHolder
import com.intellij.configurationStore.SchemeExtensionProvider
import com.intellij.configurationStore.SerializableScheme
import org.jdom.Element
import java.util.function.Function
import kotlin.properties.Delegates

abstract class ExternalizableSchemeAdapter : ExternalizableScheme {
Expand All @@ -28,18 +25,6 @@ abstract class ExternalizableSchemeAdapter : ExternalizableScheme {
override fun toString() = name
}

abstract class LazySchemeProcessor<SCHEME : Scheme, MUTABLE_SCHEME : SCHEME> : SchemeProcessor<SCHEME, MUTABLE_SCHEME>() {
open fun getName(attributeProvider: Function<String, String?>): String {
return attributeProvider.apply("name") ?: throw IllegalStateException("name is missed in the scheme data")
}

abstract fun createScheme(dataHolder: SchemeDataHolder<MUTABLE_SCHEME>, name: String, attributeProvider: Function<String, String?>, duringLoad: Boolean): MUTABLE_SCHEME

override final fun writeScheme(scheme: MUTABLE_SCHEME) = (scheme as SerializableScheme).writeScheme()

open fun isSchemeFile(name: CharSequence) = true
}

abstract class BaseSchemeProcessor<SCHEME : Scheme, MUTABLE_SCHEME : SCHEME> : NonLazySchemeProcessor<SCHEME, MUTABLE_SCHEME>(), SchemeExtensionProvider {
override val isUpgradeNeeded = false

Expand Down
Expand Up @@ -16,9 +16,11 @@
package com.intellij.configurationStore

import com.intellij.openapi.options.Scheme
import com.intellij.openapi.options.SchemeProcessor
import org.jdom.Element
import java.util.function.Function

interface SchemeDataHolder<MUTABLE_SCHEME : Scheme> {
interface SchemeDataHolder<in MUTABLE_SCHEME : Scheme> {
/**
* You should call updateDigest() after read on init.
*/
Expand All @@ -45,4 +47,16 @@ interface SchemeExtensionProvider {
* @return True if the upgrade from the old default .xml extension is needed.
*/
val isUpgradeNeeded: Boolean
}

abstract class LazySchemeProcessor<SCHEME : Scheme, MUTABLE_SCHEME : SCHEME> : SchemeProcessor<SCHEME, MUTABLE_SCHEME>() {
open fun getName(attributeProvider: Function<String, String?>): String {
return attributeProvider.apply("name") ?: throw IllegalStateException("name is missed in the scheme data")
}

abstract fun createScheme(dataHolder: SchemeDataHolder<MUTABLE_SCHEME>, name: String, attributeProvider: Function<String, String?>, duringLoad: Boolean): MUTABLE_SCHEME

override final fun writeScheme(scheme: MUTABLE_SCHEME) = (scheme as SerializableScheme).writeScheme()

open fun isSchemeFile(name: CharSequence) = true
}

0 comments on commit 36fe649

Please sign in to comment.