Class BaseSharedJSONFile

java.lang.Object
com.fs.starfarer.api.impl.BaseSharedJSONFile
Direct Known Subclasses:
SharedUnlockData

public abstract class BaseSharedJSONFile extends Object
Base class. Extending classes are for relatively small amounts of data meant to be shared across different saves. The amount of data stored here should be small and bounded (i.e. not growing indefinitely). Code using this should assume the data stored here may be lost (e.g. due to the common folder being deleted) and handle this/recover gracefully.
Author:
Alex
  • Field Details

    • json

      protected org.json.JSONObject json
    • setCache

      protected Map<String,Set<String>> setCache
  • Constructor Details

    • BaseSharedJSONFile

      public BaseSharedJSONFile()
  • Method Details

    • getFilename

      protected abstract String getFilename()
    • loadIfNeeded

      public void loadIfNeeded()
    • saveIfNeeded

      public void saveIfNeeded()
    • getSet

      public Set<String> getSet(String key)
    • doesSetContain

      public boolean doesSetContain(String key, String value)
    • addToSet

      public boolean addToSet(String key, String value)
    • optBoolean

      public boolean optBoolean(String key, boolean defaultValue)
    • setBoolean

      public void setBoolean(String key, boolean value)
    • optFloat

      public float optFloat(String key, float defaultValue)
    • setFloat

      public void setFloat(String key, float value)
    • optInt

      public int optInt(String key, int defaultValue)
    • setInt

      public void setInt(String key, int value)
    • optString

      public String optString(String key, String defaultValue)
    • setString

      public void setString(String key, String value)
    • unset

      public void unset(String key)