diff --git a/platform/core-api/src/com/intellij/openapi/components/PersistentStateComponent.java b/platform/core-api/src/com/intellij/openapi/components/PersistentStateComponent.java index 70f556d479b0..64d3cfaf8a32 100644 --- a/platform/core-api/src/com/intellij/openapi/components/PersistentStateComponent.java +++ b/platform/core-api/src/com/intellij/openapi/components/PersistentStateComponent.java @@ -15,29 +15,29 @@ */ package com.intellij.openapi.components; -import com.intellij.util.xmlb.XmlSerializer; import org.jetbrains.annotations.Nullable; /** * Every component which would like to persist its state across IDEA restarts * should implement this interface. * - * See JetBrains WIKI + * See IntelliJ Platform SDK DevGuide * for detailed description. + * + * Implementation must be thread-safe - a component should expect these methods to be called at any moment of its lifecycle. */ public interface PersistentStateComponent { /** - * @return a component state. All properties and public fields are serialized. Only values, which differ + * @return a component state. All properties, public and annotated fields are serialized. Only values, which differ * from default (i.e. the value of newly instantiated class) are serialized. null value indicates - * that no state should be stored - * @see XmlSerializer + * that no state should be stored. + * @see com.intellij.util.xmlb.XmlSerializer */ @Nullable T getState(); /** - * This method is called when new component state is loaded. A component should expect this method - * to be called at any moment of its lifecycle. The method can and will be called several times, if + * This method is called when new component state is loaded. The method can and will be called several times, if * config files were externally changed while IDEA running. * @param state loaded component state * @see com.intellij.util.xmlb.XmlSerializerUtil#copyBean(Object, Object)