no need to implement BaseComponent

GitOrigin-RevId: 3ad8a16b2b3b24caf5b2cc75f3d55147f909c9c7
This commit is contained in:
Vladimir Krivosheev
2019-05-20 20:15:59 +03:00
committed by intellij-monorepo-bot
parent 63832f19f8
commit 03ef11ce51
17 changed files with 57 additions and 56 deletions
@@ -1,4 +1,4 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.packaging.impl.artifacts;
import com.intellij.compiler.server.BuildManager;
@@ -6,7 +6,6 @@ import com.intellij.configurationStore.XmlSerializer;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.WriteAction;
import com.intellij.openapi.components.BaseComponent;
import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.State;
import com.intellij.openapi.components.Storage;
@@ -41,8 +40,7 @@ import java.util.*;
* @author nik
*/
@State(name = ArtifactManagerImpl.COMPONENT_NAME, storages = @Storage(value = "artifacts", stateSplitter = ArtifactManagerStateSplitter.class))
public class ArtifactManagerImpl extends ArtifactManager implements BaseComponent, PersistentStateComponent<ArtifactManagerState>,
Disposable {
public class ArtifactManagerImpl extends ArtifactManager implements PersistentStateComponent<ArtifactManagerState>, Disposable {
private static final Logger LOG = Logger.getInstance("#com.intellij.packaging.impl.artifacts.ArtifactManagerImpl");
@NonNls public static final String COMPONENT_NAME = "ArtifactManager";
@NonNls public static final String PACKAGING_ELEMENT_NAME = "element";
@@ -269,13 +267,7 @@ public class ArtifactManagerImpl extends ArtifactManager implements BaseComponen
}
@Override
@NotNull
public String getComponentName() {
return COMPONENT_NAME;
}
@Override
public void initComponent() {
public void initializeComponent() {
myProject.getMessageBus().connect(this).subscribe(VirtualFileManager.VFS_CHANGES, new ArtifactVirtualFileListener(myProject, this));
updateWatchedRoots();
}
@@ -95,6 +95,7 @@ abstract class ComponentStoreImpl : IComponentStore {
@Suppress("DEPRECATION")
if (component is PersistentStateComponent<*>) {
componentName = initPersistenceStateComponent(component, getStateSpec(component), serviceDescriptor)
component.initializeComponent()
}
else if (component is com.intellij.openapi.util.JDOMExternalizable) {
componentName = ComponentManagerImpl.getComponentName(component)
@@ -1,10 +1,8 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.openapi.components;
/**
* The base interface class for all components.
*
* @see ProjectComponent
*/
public interface BaseComponent extends NamedComponent {
/**
@@ -42,7 +42,7 @@ import java.util.function.Predicate;
* @author nik
*/
@State(name = FacetManagerImpl.COMPONENT_NAME, useLoadedStateAsExisting = false)
public class FacetManagerImpl extends FacetManager implements ModuleComponent, PersistentStateComponent<FacetManagerState> {
public final class FacetManagerImpl extends FacetManager implements ModuleComponent, PersistentStateComponent<FacetManagerState> {
private static final Logger LOG = Logger.getInstance("#com.intellij.facet.FacetManagerImpl");
@NonNls public static final String COMPONENT_NAME = "FacetManager";
@@ -105,7 +105,7 @@ public class ProjectRootManagerComponent extends ProjectRootManagerImpl implemen
}
@Override
public void initComponent() {
public void initializeComponent() {
myConnection.subscribe(BatchUpdateListener.TOPIC, myHandler);
}
@@ -48,7 +48,7 @@ import java.util.concurrent.locks.ReentrantReadWriteLock;
@Storage(value = StoragePathMacros.CACHE_FILE),
@Storage(value = "stubIndex.xml", deprecated = true, roamingType = RoamingType.DISABLED)
})
public class StubIndexImpl extends StubIndex implements PersistentStateComponent<StubIndexState>, BaseComponent {
public class StubIndexImpl extends StubIndex implements PersistentStateComponent<StubIndexState> {
private static final AtomicReference<Boolean> ourForcedClean = new AtomicReference<>(null);
private static final Logger LOG = Logger.getInstance("#com.intellij.psi.stubs.StubIndexImpl");
@@ -440,7 +440,7 @@ public class StubIndexImpl extends StubIndex implements PersistentStateComponent
}
@Override
public void initComponent() {
public void initializeComponent() {
myStateFuture = IndexInfrastructure.submitGenesisTask(new StubIndexInitialization());
if (!IndexInfrastructure.ourDoAsyncIndicesInitialization) {
@@ -7,7 +7,6 @@ import com.intellij.openapi.application.Application;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.application.PathManager;
import com.intellij.openapi.components.BaseComponent;
import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.State;
import com.intellij.openapi.components.Storage;
@@ -53,7 +52,7 @@ import java.util.regex.Pattern;
import static com.intellij.openapi.util.Pair.pair;
@State(name = "HttpConfigurable", storages = @Storage("proxy.settings.xml"))
public class HttpConfigurable implements PersistentStateComponent<HttpConfigurable>, Disposable, BaseComponent {
public class HttpConfigurable implements PersistentStateComponent<HttpConfigurable>, Disposable {
private static final Logger LOG = Logger.getInstance("#com.intellij.util.net.HttpConfigurable");
private static final File PROXY_CREDENTIALS_FILE = new File(PathManager.getOptionsPath(), "proxy.settings.pwd");
public static final int CONNECTION_TIMEOUT = SystemProperties.getIntProperty("idea.connection.timeout", 10000);
@@ -123,7 +122,7 @@ public class HttpConfigurable implements PersistentStateComponent<HttpConfigurab
}
@Override
public void initComponent() {
public void initializeComponent() {
final HttpConfigurable currentState = getState();
if (currentState != null) {
final Element serialized = XmlSerializer.serialize(currentState);
@@ -154,6 +153,11 @@ public class HttpConfigurable implements PersistentStateComponent<HttpConfigurab
CommonProxy.getInstance().setCustomAuth(name, new IdeaWideAuthenticator(this));
}
@Deprecated
public void initComponent() {
initializeComponent();
}
@NotNull
public ProxySelector getOnlyBySettingsSelector() {
return mySelector;
@@ -13,7 +13,10 @@ import com.intellij.ide.util.PropertiesComponent;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.actionSystem.impl.ActionToolbarImpl;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.components.*;
import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.RoamingType;
import com.intellij.openapi.components.State;
import com.intellij.openapi.components.Storage;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.colors.EditorColorsManager;
import com.intellij.openapi.editor.colors.EditorColorsScheme;
@@ -62,7 +65,7 @@ import java.util.List;
import java.util.*;
@State(name = "LafManager", storages = @Storage(value = "laf.xml", roamingType = RoamingType.PER_OS))
public final class LafManagerImpl extends LafManager implements PersistentStateComponent<Element>, Disposable, BaseComponent {
public final class LafManagerImpl extends LafManager implements PersistentStateComponent<Element>, Disposable {
private static final Logger LOG = Logger.getInstance("#com.intellij.ide.ui.LafManager");
@NonNls private static final String ELEMENT_LAF = "laf";
@@ -165,7 +168,7 @@ public final class LafManagerImpl extends LafManager implements PersistentStateC
}
@Override
public void initComponent() {
public void initializeComponent() {
if (myCurrentLaf != null && !(myCurrentLaf instanceof UIThemeBasedLookAndFeelInfo)) {
final UIManager.LookAndFeelInfo laf = findLaf(myCurrentLaf.getClassName());
if (laf != null) {
@@ -1,10 +1,9 @@
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.openapi.command.impl;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.command.undo.DocumentReference;
import com.intellij.openapi.command.undo.DocumentReferenceManager;
import com.intellij.openapi.components.BaseComponent;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.fileEditor.FileDocumentManager;
import com.intellij.openapi.util.Key;
@@ -25,7 +24,7 @@ import java.lang.ref.WeakReference;
import java.util.List;
import java.util.Map;
public class DocumentReferenceManagerImpl extends DocumentReferenceManager implements BaseComponent {
public final class DocumentReferenceManagerImpl extends DocumentReferenceManager {
private static final Key<List<VirtualFile>> DELETED_FILES = Key.create(DocumentReferenceManagerImpl.class.getName() + ".DELETED_FILES");
private final Map<Document, DocumentReference> myDocToRef = ContainerUtil.createWeakKeyWeakValueMap();
@@ -34,8 +33,7 @@ public class DocumentReferenceManagerImpl extends DocumentReferenceManager imple
private static final Key<DocumentReference> FILE_TO_STRONG_REF_KEY = Key.create("FILE_TO_STRONG_REF_KEY");
private final Map<FilePath, DocumentReference> myDeletedFilePathToRef = ContainerUtil.createWeakValueMap();
@Override
public void initComponent() {
DocumentReferenceManagerImpl() {
VirtualFileManager.getInstance().addVirtualFileListener(new VirtualFileListener() {
@Override
public void fileCreated(@NotNull VirtualFileEvent event) {
@@ -10,7 +10,6 @@ import com.intellij.openapi.application.Application;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.application.ReadAction;
import com.intellij.openapi.components.BaseComponent;
import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.State;
import com.intellij.openapi.components.Storage;
@@ -70,7 +69,7 @@ import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
@State(name = "FileTypeManager", storages = @Storage("filetypes.xml"), additionalExportFile = FileTypeManagerImpl.FILE_SPEC )
public class FileTypeManagerImpl extends FileTypeManagerEx implements PersistentStateComponent<Element>, Disposable, BaseComponent {
public class FileTypeManagerImpl extends FileTypeManagerEx implements PersistentStateComponent<Element>, Disposable {
private static final Logger LOG = Logger.getInstance(FileTypeManagerImpl.class);
// You must update all existing default configurations accordingly
@@ -475,7 +474,7 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements Persistent
}
@Override
public void initComponent() {
public void initializeComponent() {
if (!myUnresolvedMappings.isEmpty()) {
for (StandardFileType pair : myStandardFileTypes.values()) {
registerReDetectedMappings(pair);
@@ -70,7 +70,7 @@ public class FileTypesTest extends PlatformTestCase {
ApplicationManager.getApplication().runWriteAction(() -> myFileTypeManager.setIgnoredFilesList(myOldIgnoredFilesList));
myFileTypeManager.clearForTests();
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
}
catch (Throwable e) {
addSuppressedException(e);
@@ -358,7 +358,7 @@ public class FileTypesTest extends PlatformTestCase {
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(element);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
assertEquals(fileType, myFileTypeManager.getFileTypeByFileName("foo." + extension));
}
@@ -384,7 +384,7 @@ public class FileTypesTest extends PlatformTestCase {
myFileTypeManager.getRemovedMappings().clear();
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(state);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
Map<FileNameMatcher, Pair<FileType, Boolean>> mappings = myFileTypeManager.getRemovedMappings();
Pair<FileType, Boolean> pair = mappings.get(matcher);
@@ -410,7 +410,7 @@ public class FileTypesTest extends PlatformTestCase {
myFileTypeManager.getRemovedMappings().clear();
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(state);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
Map<FileNameMatcher, Pair<FileType, Boolean>> mappings = myFileTypeManager.getRemovedMappings();
Pair<FileType, Boolean> pair = mappings.get(matcher);
@@ -491,7 +491,7 @@ public class FileTypesTest extends PlatformTestCase {
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(element);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
Map<FileNameMatcher, Pair<FileType, Boolean>> mappings = myFileTypeManager.getRemovedMappings();
assertEquals(1, mappings.size());
assertEquals(typeFromPlugin, mappings.values().iterator().next().first);
@@ -512,7 +512,7 @@ public class FileTypesTest extends PlatformTestCase {
FileTypeFactory.FILE_TYPE_FACTORY_EP.getPoint(null).registerExtension(factory, disposable);
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(element);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
ApplicationManager.getApplication().runWriteAction(() -> myFileTypeManager.associatePattern(typeFromPlugin, "*.foo"));
@@ -525,7 +525,7 @@ public class FileTypesTest extends PlatformTestCase {
myFileTypeManager.clearForTests();
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(element);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
element = myFileTypeManager.getState();
//log(JDOMUtil.writeElement(element));
@@ -535,7 +535,7 @@ public class FileTypesTest extends PlatformTestCase {
myFileTypeManager.clearForTests();
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(element);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
//element = myFileTypeManager.getState();
//log(JDOMUtil.writeElement(element));
@@ -551,7 +551,7 @@ public class FileTypesTest extends PlatformTestCase {
public void testReassign() throws Exception {
myFileTypeManager.clearForTests();
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
Element element = JDOMUtil.load(
"<component name=\"FileTypeManager\" version=\"13\">\n" +
@@ -561,7 +561,7 @@ public class FileTypesTest extends PlatformTestCase {
"</component>");
myFileTypeManager.loadState(element);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
Map<FileNameMatcher, Pair<FileType, Boolean>> mappings = myFileTypeManager.getRemovedMappings();
assertEquals(1, mappings.size());
assertEquals(ArchiveFileType.INSTANCE, mappings.values().iterator().next().first);
@@ -586,7 +586,7 @@ public class FileTypesTest extends PlatformTestCase {
myFileTypeManager.clearForTests();
myFileTypeManager.initStandardFileTypes();
myFileTypeManager.loadState(element);
myFileTypeManager.initComponent();
myFileTypeManager.initializeComponent();
FileType extensions = myFileTypeManager.getFileTypeByExtension(extension);
assertEquals("IDL", extensions.getName());
ApplicationManager.getApplication().runWriteAction(() -> myFileTypeManager.removeAssociatedExtension(idl, extension));
@@ -42,4 +42,10 @@ public interface PersistentStateComponent<T> {
*/
default void noStateLoaded() {
}
/**
* If class also is a component, then this method will be called after loading state (even if not state).
*/
default void initializeComponent() {
}
}
@@ -60,7 +60,7 @@ import java.util.concurrent.TimeoutException;
* @author Dmitry Avdeev
*/
@State(name = "TaskManager", storages = @Storage(StoragePathMacros.WORKSPACE_FILE))
public final class TaskManagerImpl extends TaskManager implements PersistentStateComponent<TaskManagerImpl.Config>, ChangeListDecorator, Disposable, BaseComponent {
public final class TaskManagerImpl extends TaskManager implements PersistentStateComponent<TaskManagerImpl.Config>, ChangeListDecorator, Disposable {
private static final Logger LOG = Logger.getInstance(TaskManagerImpl.class);
private static final DecimalFormat LOCAL_TASK_ID_FORMAT = new DecimalFormat("LOCAL-00000");
@@ -707,7 +707,7 @@ public final class TaskManagerImpl extends TaskManager implements PersistentStat
}
@Override
public void initComponent() {
public void initializeComponent() {
if (!ApplicationManager.getApplication().isUnitTestMode()) {
myCacheRefreshTimer = UIUtil.createNamedTimer("TaskManager refresh", myConfig.updateInterval * 60 * 1000, new ActionListener() {
@Override
@@ -45,8 +45,7 @@ import java.util.Collections;
import java.util.List;
@State(name = "MavenProjectNavigator", storages = {@Storage(StoragePathMacros.WORKSPACE_FILE)})
public final class MavenProjectsNavigator extends MavenSimpleProjectComponent implements PersistentStateComponent<MavenProjectsNavigatorState>,
Disposable, BaseComponent {
public final class MavenProjectsNavigator extends MavenSimpleProjectComponent implements PersistentStateComponent<MavenProjectsNavigatorState>, Disposable {
public static final String TOOL_WINDOW_ID = "Maven";
public static final String TOOL_WINDOW_PLACE_ID = "Maven tool window";
@@ -141,7 +140,7 @@ public final class MavenProjectsNavigator extends MavenSimpleProjectComponent im
}
@Override
public void initComponent() {
public void initializeComponent() {
if (!isNormalProject()) return;
doInit();
}
@@ -170,7 +170,7 @@ public class MavenProjectsManager extends MavenSimpleProjectComponent
}
@Override
public void initComponent() {
public void initializeComponent() {
if (!isNormalProject()) return;
StartupManagerEx startupManager = StartupManagerEx.getInstanceEx(myProject);
@@ -6,7 +6,6 @@ import com.intellij.execution.RunManagerEx;
import com.intellij.openapi.compiler.CompileContext;
import com.intellij.openapi.compiler.CompileTask;
import com.intellij.openapi.compiler.CompilerManager;
import com.intellij.openapi.components.BaseComponent;
import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.State;
import com.intellij.openapi.project.Project;
@@ -30,8 +29,7 @@ import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
@State(name = "MavenCompilerTasksManager")
public class MavenTasksManager extends MavenSimpleProjectComponent implements PersistentStateComponent<MavenTasksManagerState>,
BaseComponent {
public class MavenTasksManager extends MavenSimpleProjectComponent implements PersistentStateComponent<MavenTasksManagerState> {
private final AtomicBoolean isInitialized = new AtomicBoolean();
private MavenTasksManagerState myState = new MavenTasksManagerState();
@@ -85,7 +83,7 @@ public class MavenTasksManager extends MavenSimpleProjectComponent implements Pe
}
@Override
public void initComponent() {
public void initializeComponent() {
if (!isNormalProject()) return;
if (isInitialized.getAndSet(true)) return;
@@ -20,7 +20,10 @@ import com.intellij.lang.Language;
import com.intellij.lang.LanguageFormatting;
import com.intellij.openapi.actionSystem.ActionManager;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.components.*;
import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.State;
import com.intellij.openapi.components.Storage;
import com.intellij.openapi.components.StoragePathMacros;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileTypes.StdFileTypes;
import com.intellij.openapi.options.SearchableConfigurable;
@@ -37,7 +40,7 @@ import javax.swing.*;
import java.awt.*;
@State(name = "XSLT-Support.Configuration", storages = {@Storage(StoragePathMacros.NON_ROAMABLE_FILE)})
class XsltConfigImpl extends XsltConfig implements PersistentStateComponent<XsltConfigImpl>, BaseComponent {
class XsltConfigImpl extends XsltConfig implements PersistentStateComponent<XsltConfigImpl> {
public boolean SHOW_LINKED_FILES = true;
@Nullable
@@ -52,7 +55,7 @@ class XsltConfigImpl extends XsltConfig implements PersistentStateComponent<Xslt
}
@Override
public void initComponent() {
public void initializeComponent() {
final Language xmlLang = StdFileTypes.XML.getLanguage();
// intentionManager.addAction(new DeleteUnusedParameterFix());