public class MemorySection extends Object implements ConfigurationSection
ConfigurationSection that is stored in memory.| Modifier | Constructor and Description |
|---|---|
protected |
MemorySection()
Creates an empty MemorySection for use as a root
Configuration
section. |
protected |
MemorySection(ConfigurationSection parent,
String path)
Creates an empty MemorySection with the specified parent and path.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addDefault(String path,
Object value)
Sets the default value in the root at the given path as provided.
|
boolean |
contains(String path)
Checks if this
ConfigurationSection contains the given path. |
static String |
createPath(ConfigurationSection section,
String key)
Creates a full path to the given
ConfigurationSection from its
root Configuration. |
static String |
createPath(ConfigurationSection section,
String key,
ConfigurationSection relativeTo)
Creates a relative path to the given
ConfigurationSection from
the given relative section. |
ConfigurationSection |
createSection(String path)
Creates an empty
ConfigurationSection at the specified path. |
ConfigurationSection |
createSection(String path,
Map<?,?> map)
Creates a
ConfigurationSection at the specified path, with
specified values. |
Object |
get(String path)
Gets the requested Object by path.
|
Object |
get(String path,
Object def)
Gets the requested Object by path, returning a default value if not
found.
|
boolean |
getBoolean(String path)
Gets the requested boolean by path.
|
boolean |
getBoolean(String path,
boolean def)
Gets the requested boolean by path, returning a default value if not
found.
|
List<Boolean> |
getBooleanList(String path)
Gets the requested List of Boolean by path.
|
List<Byte> |
getByteList(String path)
Gets the requested List of Byte by path.
|
List<Character> |
getCharacterList(String path)
Gets the requested List of Character by path.
|
ConfigurationSection |
getConfigurationSection(String path)
Gets the requested ConfigurationSection by path.
|
String |
getCurrentPath()
Gets the path of this
ConfigurationSection from its root Configuration
For any Configuration themselves, this will return an empty
string. |
protected Object |
getDefault(String path) |
ConfigurationSection |
getDefaultSection()
Gets the equivalent
ConfigurationSection from the default
Configuration defined in ConfigurationSection.getRoot(). |
double |
getDouble(String path)
Gets the requested double by path.
|
double |
getDouble(String path,
double def)
Gets the requested double by path, returning a default value if not
found.
|
List<Double> |
getDoubleList(String path)
Gets the requested List of Double by path.
|
List<Float> |
getFloatList(String path)
Gets the requested List of Float by path.
|
int |
getInt(String path)
Gets the requested int by path.
|
int |
getInt(String path,
int def)
Gets the requested int by path, returning a default value if not found.
|
List<Integer> |
getIntegerList(String path)
Gets the requested List of Integer by path.
|
Set<String> |
getKeys(boolean deep)
Gets a set containing all keys in this section.
|
List<?> |
getList(String path)
Gets the requested List by path.
|
List<?> |
getList(String path,
List<?> def)
Gets the requested List by path, returning a default value if not
found.
|
long |
getLong(String path)
Gets the requested long by path.
|
long |
getLong(String path,
long def)
Gets the requested long by path, returning a default value if not
found.
|
List<Long> |
getLongList(String path)
Gets the requested List of Long by path.
|
List<Map<?,?>> |
getMapList(String path)
Gets the requested List of Maps by path.
|
Map<String,Object> |
getMapValues(boolean deep)
Gets a Map containing all keys and their values for this section.
|
String |
getName()
Gets the name of this individual
ConfigurationSection, in the
path. |
ConfigurationSection |
getParent()
Gets the parent
ConfigurationSection that directly contains
this ConfigurationSection. |
Configuration |
getRoot()
Gets the root
Configuration that contains this ConfigurationSection
For any Configuration themselves, this will return its own
object. |
List<Short> |
getShortList(String path)
Gets the requested List of Short by path.
|
String |
getString(String path)
Gets the requested String by path.
|
String |
getString(String path,
String def)
Gets the requested String by path, returning a default value if not
found.
|
List<String> |
getStringList(String path)
Gets the requested List of String by path.
|
Map<String,Object> |
getValues(boolean deep)
Gets a Map containing all keys and their values for this section.
|
boolean |
isBoolean(String path)
Checks if the specified path is a boolean.
|
boolean |
isConfigurationSection(String path)
Checks if the specified path is a ConfigurationSection.
|
boolean |
isDouble(String path)
Checks if the specified path is a double.
|
boolean |
isEmpty()
Gets if this configuration section is empty.
|
boolean |
isInt(String path)
Checks if the specified path is an int.
|
boolean |
isList(String path)
Checks if the specified path is a List.
|
boolean |
isLong(String path)
Checks if the specified path is a long.
|
protected boolean |
isPrimitiveWrapper(Object input) |
boolean |
isSet(String path)
Checks if this
ConfigurationSection has a value set for the
given path. |
boolean |
isString(String path)
Checks if the specified path is a String.
|
protected void |
mapChildrenKeys(Set<String> output,
ConfigurationSection section,
boolean deep) |
protected void |
mapChildrenValues(Map<String,Object> output,
ConfigurationSection section,
boolean deep) |
void |
set(String path,
Object value)
Sets the specified path to the given value.
|
int |
size()
Gets the size of this configuration section.
|
String |
toString() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitremoveprotected MemorySection()
Configuration
section.
Note that calling this without being yourself a Configuration
will throw an exception!
IllegalStateException - Thrown if this is not a Configuration root.protected MemorySection(ConfigurationSection parent, String path)
parent - Parent section that contains this own section.path - Path that you may access this section from via the root
Configuration.IllegalArgumentException - Thrown is parent or path is null, or
if parent contains no root Configuration.public static String createPath(ConfigurationSection section, String key)
ConfigurationSection from its
root Configuration.
You may use this method for any given ConfigurationSection, not
only MemorySection.
section - Section to create a path for.key - Name of the specified section.public static String createPath(ConfigurationSection section, String key, ConfigurationSection relativeTo)
ConfigurationSection from
the given relative section.
You may use this method for any given ConfigurationSection, not
only MemorySection.
section - Section to create a path for.key - Name of the specified section.relativeTo - Section to create the path relative to.public Set<String> getKeys(boolean deep)
ConfigurationSection
If deep is set to true, then this will contain all the keys within any
child ConfigurationSections (and their children, etc). These
will be in a valid path notation for you to use.
If deep is set to false, then this will contain only the keys of any direct children, and not their own children.
getKeys in interface ConfigurationSectiondeep - Whether or not to get a deep list, as opposed to a shallow
list.public Map<String,Object> getValues(boolean deep)
ConfigurationSection
If deep is set to true, then this will contain all the keys and values
within any child ConfigurationSections (and their children,
etc). These keys will be in a valid path notation for you to use.
If deep is set to false, then this will contain only the keys and values of any direct children, and not their own children.
getValues in interface ConfigurationSectiondeep - Whether or not to get a deep list, as opposed to a shallow
list.public Map<String,Object> getMapValues(boolean deep)
ConfigurationSection
If deep is set to true, then this will contain all the keys and values
within any child Maps (and their children, etc).
These keys will be in a valid path notation for you to use.
If deep is set to false, then this will contain only the keys and values of any direct children, and not their own children.
getMapValues in interface ConfigurationSectiondeep - Whether or not to get a deep list, as opposed to a shallow
list.public boolean contains(String path)
ConfigurationSectionConfigurationSection contains the given path.
If the value for the requested path does not exist but a default value has been specified, this will return true.
contains in interface ConfigurationSectionpath - Path to check for existence.public boolean isSet(String path)
ConfigurationSectionConfigurationSection has a value set for the
given path.
If the value for the requested path does not exist but a default value has been specified, this will still return false.
isSet in interface ConfigurationSectionpath - Path to check for existence.public int size()
ConfigurationSectionsize in interface ConfigurationSectionpublic boolean isEmpty()
ConfigurationSectionisEmpty in interface ConfigurationSectionpublic String getCurrentPath()
ConfigurationSectionConfigurationSection from its root Configuration
For any Configuration themselves, this will return an empty
string.
If the section is no longer contained within its root for any reason, such as being replaced with a different value, this may return null.
To retrieve the single name of this section, that is, the final part of
the path returned by this method, you may use ConfigurationSection.getName().
getCurrentPath in interface ConfigurationSectionpublic String getName()
ConfigurationSectionConfigurationSection, in the
path.
This will always be the final part of ConfigurationSection.getCurrentPath(), unless
the section is orphaned.
getName in interface ConfigurationSectionpublic Configuration getRoot()
ConfigurationSectionConfiguration that contains this ConfigurationSection
For any Configuration themselves, this will return its own
object.
If the section is no longer contained within its root for any reason, such as being replaced with a different value, this may return null.
getRoot in interface ConfigurationSectionpublic ConfigurationSection getParent()
ConfigurationSectionConfigurationSection that directly contains
this ConfigurationSection.
For any Configuration themselves, this will return null.
If the section is no longer contained within its parent for any reason, such as being replaced with a different value, this may return null.
getParent in interface ConfigurationSectionpublic Object get(String path)
ConfigurationSectionIf the Object does not exist but a default value has been specified, this will return the default value. If the Object does not exist and no default value was specified, this will return null.
get in interface ConfigurationSectionpath - Path of the Object to get.public Object get(String path, Object def)
ConfigurationSection
If the Object does not exist then the specified default value will
returned regardless of if a default has been identified in the root
Configuration.
get in interface ConfigurationSectionpath - Path of the Object to get.def - The default value to return if the path is not found.public void set(String path, Object value)
ConfigurationSectionIf value is null, the entry will be removed. Any existing entry will be replaced, regardless of what the new value is.
Some implementations may have limitations on what you may store. See
their individual javadocs for details. No implementations should allow
you to store Configurations or ConfigurationSections,
please use ConfigurationSection.createSection(String) for that.
set in interface ConfigurationSectionpath - Path of the object to set.value - New value to set the path to.public ConfigurationSection createSection(String path)
ConfigurationSectionConfigurationSection at the specified path.
Any value that was previously set at this path will be overwritten. If
the previous value was itself a ConfigurationSection, it will
be orphaned.
createSection in interface ConfigurationSectionpath - Path to create the section at.public String getString(String path)
ConfigurationSectionIf the String does not exist but a default value has been specified, this will return the default value. If the String does not exist and no default value was specified, this will return null.
getString in interface ConfigurationSectionpath - Path of the String to get.public String getString(String path, String def)
ConfigurationSection
If the String does not exist then the specified default value will
returned regardless of if a default has been identified in the root
Configuration.
getString in interface ConfigurationSectionpath - Path of the String to get.def - The default value to return if the path is not found or is
not a String.public boolean isString(String path)
ConfigurationSectionIf the path exists but is not a String, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a String and return appropriately.
isString in interface ConfigurationSectionpath - Path of the String to check.public int getInt(String path)
ConfigurationSectionIf the int does not exist but a default value has been specified, this will return the default value. If the int does not exist and no default value was specified, this will return 0.
getInt in interface ConfigurationSectionpath - Path of the int to get.public int getInt(String path, int def)
ConfigurationSection
If the int does not exist then the specified default value will
returned regardless of if a default has been identified in the root
Configuration.
getInt in interface ConfigurationSectionpath - Path of the int to get.def - The default value to return if the path is not found or is
not an int.public boolean isInt(String path)
ConfigurationSectionIf the path exists but is not a int, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a int and return appropriately.
isInt in interface ConfigurationSectionpath - Path of the int to check.public boolean getBoolean(String path)
ConfigurationSectionIf the boolean does not exist but a default value has been specified, this will return the default value. If the boolean does not exist and no default value was specified, this will return false.
getBoolean in interface ConfigurationSectionpath - Path of the boolean to get.public boolean getBoolean(String path, boolean def)
ConfigurationSection
If the boolean does not exist then the specified default value will
returned regardless of if a default has been identified in the root
Configuration.
getBoolean in interface ConfigurationSectionpath - Path of the boolean to get.def - The default value to return if the path is not found or is
not a boolean.public boolean isBoolean(String path)
ConfigurationSectionIf the path exists but is not a boolean, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a boolean and return appropriately.
isBoolean in interface ConfigurationSectionpath - Path of the boolean to check.public double getDouble(String path)
ConfigurationSectionIf the double does not exist but a default value has been specified, this will return the default value. If the double does not exist and no default value was specified, this will return 0.
getDouble in interface ConfigurationSectionpath - Path of the double to get.public double getDouble(String path, double def)
ConfigurationSection
If the double does not exist then the specified default value will
returned regardless of if a default has been identified in the root
Configuration.
getDouble in interface ConfigurationSectionpath - Path of the double to get.def - The default value to return if the path is not found or is
not a double.public boolean isDouble(String path)
ConfigurationSectionIf the path exists but is not a double, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a double and return appropriately.
isDouble in interface ConfigurationSectionpath - Path of the double to check.public long getLong(String path)
ConfigurationSectionIf the long does not exist but a default value has been specified, this will return the default value. If the long does not exist and no default value was specified, this will return 0.
getLong in interface ConfigurationSectionpath - Path of the long to get.public long getLong(String path, long def)
ConfigurationSection
If the long does not exist then the specified default value will
returned regardless of if a default has been identified in the root
Configuration.
getLong in interface ConfigurationSectionpath - Path of the long to get.def - The default value to return if the path is not found or is
not a long.public boolean isLong(String path)
ConfigurationSectionIf the path exists but is not a long, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a long and return appropriately.
isLong in interface ConfigurationSectionpath - Path of the long to check.public List<?> getList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return null.
getList in interface ConfigurationSectionpath - Path of the List to get.public boolean isList(String path)
ConfigurationSectionIf the path exists but is not a List, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a List and return appropriately.
isList in interface ConfigurationSectionpath - Path of the List to check.public List<String> getStringList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a String if possible, but may miss any values out if they are not compatible.
getStringList in interface ConfigurationSectionpath - Path of the List to get.public List<Integer> getIntegerList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Integer if possible, but may miss any values out if they are not compatible.
getIntegerList in interface ConfigurationSectionpath - Path of the List to get.public List<Boolean> getBooleanList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Boolean if possible, but may miss any values out if they are not compatible.
getBooleanList in interface ConfigurationSectionpath - Path of the List to get.public List<Double> getDoubleList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Double if possible, but may miss any values out if they are not compatible.
getDoubleList in interface ConfigurationSectionpath - Path of the List to get.public List<Float> getFloatList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Float if possible, but may miss any values out if they are not compatible.
getFloatList in interface ConfigurationSectionpath - Path of the List to get.public List<Long> getLongList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Long if possible, but may miss any values out if they are not compatible.
getLongList in interface ConfigurationSectionpath - Path of the List to get.public List<Byte> getByteList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Byte if possible, but may miss any values out if they are not compatible.
getByteList in interface ConfigurationSectionpath - Path of the List to get.public List<Character> getCharacterList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Character if possible, but may miss any values out if they are not compatible.
getCharacterList in interface ConfigurationSectionpath - Path of the List to get.public List<Short> getShortList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Short if possible, but may miss any values out if they are not compatible.
getShortList in interface ConfigurationSectionpath - Path of the List to get.public List<Map<?,?>> getMapList(String path)
ConfigurationSectionIf the List does not exist but a default value has been specified, this will return the default value. If the List does not exist and no default value was specified, this will return an empty List.
This method will attempt to cast any values into a Map if possible, but may miss any values out if they are not compatible.
getMapList in interface ConfigurationSectionpath - Path of the List to get.public ConfigurationSection getConfigurationSection(String path)
ConfigurationSectionIf the ConfigurationSection does not exist but a default value has been specified, this will return the default value. If the ConfigurationSection does not exist and no default value was specified, this will return null.
getConfigurationSection in interface ConfigurationSectionpath - Path of the ConfigurationSection to get.public boolean isConfigurationSection(String path)
ConfigurationSectionIf the path exists but is not a ConfigurationSection, this will return false. If the path does not exist, this will return false. If the path does not exist but a default value has been specified, this will check if that default value is a ConfigurationSection and return appropriately.
isConfigurationSection in interface ConfigurationSectionpath - Path of the ConfigurationSection to check.public ConfigurationSection getDefaultSection()
ConfigurationSectionConfigurationSection from the default
Configuration defined in ConfigurationSection.getRoot().
If the root contains no defaults, or the defaults doesn't contain a
value for this path, or the value at this path is not a ConfigurationSection then this will return null.
getDefaultSection in interface ConfigurationSectionpublic void addDefault(String path, Object value)
ConfigurationSection
If no source Configuration was provided as a default
collection, then a new MemoryConfiguration will be created to
hold the new default value.
If value is null, the value will be removed from the default Configuration source.
If the value as returned by ConfigurationSection.getDefaultSection() is null, then
this will create a new section at the path, replacing anything that may
have existed there previously.
addDefault in interface ConfigurationSectionpath - Path of the value to set.value - Value to set the default to.public ConfigurationSection createSection(String path, Map<?,?> map)
ConfigurationSectionConfigurationSection at the specified path, with
specified values.
Any value that was previously set at this path will be overwritten. If
the previous value was itself a ConfigurationSection, it will
be orphaned.
createSection in interface ConfigurationSectionpath - Path to create the section at.map - The values to used.public List<?> getList(String path, List<?> def)
ConfigurationSection
If the List does not exist then the specified default value will
returned regardless of if a default has been identified in the root
Configuration.
getList in interface ConfigurationSectionpath - Path of the List to get.def - The default value to return if the path is not found or is
not a List.protected boolean isPrimitiveWrapper(Object input)
protected void mapChildrenKeys(Set<String> output, ConfigurationSection section, boolean deep)
protected void mapChildrenValues(Map<String,Object> output, ConfigurationSection section, boolean deep)
Copyright © 2023. All rights reserved.