Package org.kingdoms.data.managers.base
Class KeyedDataManager<K,T extends KeyedKingdomsObject<K>>
java.lang.Object
org.kingdoms.data.managers.BaseDataManager
org.kingdoms.data.managers.base.DataManager<T>
org.kingdoms.data.managers.base.KeyedDataManager<K,T>
- All Implemented Interfaces:
Closeable,AutoCloseable,org.kingdoms.constants.namespace.Namespaced
- Direct Known Subclasses:
GroupManager,KingdomPlayerManager,LandManager,MessageTransferAgent
-
Field Summary
Fields inherited from class org.kingdoms.data.managers.base.DataManager
savingState -
Constructor Summary
ConstructorsConstructorDescriptionKeyedDataManager(org.kingdoms.constants.namespace.Namespace namespace, KeyedKingdomsDatabase<K, T> database, boolean cacheExistence, org.kingdoms.data.managers.BaseDataManager dataCenter) -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidThis method is for internal purposes only.voidcopyAllDataTo(DataManager<T> dataManager) This method is for internal purposes only.voidvoidbooleangetDataIfLoaded(K key) Get all data that are currently loaded into the cache.@Nullable TgetOrLoadData(@NonNull K identifier) booleanvoidloadAllData(boolean checkIfLoaded) voidloadAndSave(@NonNull T data) intThe amount of data that are currently loaded.@Nullable TintsaveAll(boolean smart) protected voidMethods inherited from class org.kingdoms.data.managers.base.DataManager
autoSave, close, onDisable, onLoad, saveObjectState, setSavingState, toStringMethods inherited from class org.kingdoms.data.managers.BaseDataManager
ensureOpen, getAutoSaveInterval, getNamespace, getShouldSaveData, isCacheStatic, isClosed, isSmartSaving, isTemporary, setShouldSaveData
-
Constructor Details
-
KeyedDataManager
public KeyedDataManager(org.kingdoms.constants.namespace.Namespace namespace, KeyedKingdomsDatabase<K, T> database, boolean cacheExistence, org.kingdoms.data.managers.BaseDataManager dataCenter)
-
-
Method Details
-
delete
-
clearCache
public void clearCache()Description copied from class:DataManagerThis method is for internal purposes only.- Specified by:
clearCachein classDataManager<T extends KeyedKingdomsObject<K>>
-
getDatabase
- Specified by:
getDatabasein classDataManager<T extends KeyedKingdomsObject<K>>
-
deleteAllData
public void deleteAllData()- Specified by:
deleteAllDatain classDataManager<T extends KeyedKingdomsObject<K>>
-
copyAllDataTo
Description copied from class:DataManagerThis method is for internal purposes only.- Specified by:
copyAllDataToin classDataManager<T extends KeyedKingdomsObject<K>>
-
loadAllData
@Internal public void loadAllData(boolean checkIfLoaded) - Specified by:
loadAllDatain classDataManager<T extends KeyedKingdomsObject<K>>
-
load
-
saveAll
public int saveAll(boolean smart) - Specified by:
saveAllin classDataManager<T extends KeyedKingdomsObject<K>>- Returns:
- the number of saved data.
-
loadAndSave
-
getOrLoadData
-
getDataIfLoaded
-
isLoaded
-
unload
- Overrides:
unloadin classDataManager<T extends KeyedKingdomsObject<K>>
-
cache
-
peek
-
exists
-
loadedCount
public int loadedCount()Description copied from class:DataManagerThe amount of data that are currently loaded. Sometimes this number is an estimate. For total number of data, useDataManager.getDatabase()->KingdomsDatabase.count().- Specified by:
loadedCountin classDataManager<T extends KeyedKingdomsObject<K>>
-
getLoadedData
Description copied from class:DataManagerGet all data that are currently loaded into the cache.- Specified by:
getLoadedDatain classDataManager<T extends KeyedKingdomsObject<K>>
-
peekAllData
- Specified by:
peekAllDatain classDataManager<T extends KeyedKingdomsObject<K>>
-