Show / Hide Table of Contents

Namespace org.visab.workspace

The workspace package contains Managers for manipulating persistent VISAB data. Manipulation examples are 1. Saving VISAB files 2. Deleting VISAB files 3. Saving Settings.

The IO operations required should be done seperately in repository classes with the Manager classes wrapping around them and provide validation checks.

Classes

BasicRepository

An instantiable repository base implementation.

ConfigManager

The ConfigManager that is used for loading mappings and settings aswell as modifying settings.

ConfigRepository

The ConfigRepository that is used for loading and saving Settings to the database.

DatabaseManager

The DatabaseManager that is used for deleting, adding, and removing VISAB files.

DatabaseRepository

A repository for loading, saving, and removing VISAB files from VISABs database.

Mapping

POJO representing a mapping configuration. Mappings are used by VISAB to determine where to find the implementations for which game. They are loaded once at the start of VISAB from the classMapping.json file. Each of these fields has the fully qualifying name of a java class as their value.

RepositoryBase

The base repository that all repositories should inherit from. Used for any I/O operations inside of VISAB. If you need to import any java IO libs in non repository classes, you are likely doing it wrong. Create a specific repository instead or check if there isnt a repositry implementation that supports your wanted functionality already.

SavedFileInformation

Represents the information when a file was saved.

UserSettings

Represents the settings that may be manipulated using VISABs Settings view. This class is serialized as json and written to the settings.json file.

Workspace

The VISAB workspace, from which config and database management can be done. It is the central point for modifying settings and deleting, adding, and renaming VISAB files. For consistency reasons, the only Manager instances should be the ones in the Workspace singelton instance.

Interfaces

IRepository

The IRepository interface that all Repositories have to implement. Repositories are used for I/O operations, so that we dont have to spread those accross the project.

In This Article
Back to top Generated by DocFX