package com.intellij.remoteServer.configuration; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.util.xmlb.XmlSerializerUtil; import org.jetbrains.annotations.Nullable; /** * @author nik */ public abstract class ServerConfigurationBase<Self extends ServerConfigurationBase<Self>> extends ServerConfiguration implements PersistentStateComponent<Self> { @Override public PersistentStateComponent<?> getSerializer() { return this; } @Nullable @Override public Self getState() { return (Self)this; } @Override public void loadState(Self state) { XmlSerializerUtil.copyBean(state, this); } }