2016-03-11 36 views
2

我正在开发一个IntelliJ插件,我想将一些设置信息作为字符串存储。我怎么能够存储它?我发现PersistentStateComponent<T>就是为了这个目的,但我没有找到任何工作和简单的使用这个类。IntelliJ插件中的持久存储

能否请您提供一些信息,我怎么能创建一个类只有一个字符串参数和方法,如:

 Void Save(String value) 
    { 
     //save SettingsAsString 
    { 

    String Load() 
    { 
     //Do something 
     return savedSettingsAsString 
    } 

谢谢!

回答

1

下面是一个简单的例子:

落实applicationService扩展点

<applicationService serviceImplementation="com.sylvanaar.idea.Lua.options.LuaApplicationSettings"/>

然后设置执行是相当多的样板,你刚才创建的所有设置上的设置类字段你想要存储。

public class LuaApplicationSettings implements PersistentStateComponent<LuaApplicationSettings> { 
public boolean INCLUDE_ALL_FIELDS_IN_COMPLETIONS = false; 
public boolean SHOW_TAIL_CALLS_IN_GUTTER = true; 
public boolean ENABLE_TYPE_INFERENCE = true; 

@Override 
public LuaApplicationSettings getState() { 
    return this; 
} 

@Override 
public void loadState(LuaApplicationSettings state) { 
    XmlSerializerUtil.copyBean(state, this); 
} 

public static LuaApplicationSettings getInstance() { 
    return ServiceManager.getService(LuaApplicationSettings.class); 
} 

}

+0

谢谢!有效 – Compoo