Search in sources :

Example 1 with DuplicateKeyException

use of me.deecaad.core.file.DuplicateKeyException in project MechanicsMain by WeaponMechanics.

the class WeaponMechanics method loadConfig.

void loadConfig() {
    debug.debug("Loading and serializing config");
    try {
        List<?> serializers = new SerializerInstancer(new JarFile(getFile())).createAllInstances(getClassLoader());
        // noinspection unchecked
        MechanicsCore.addSerializers(getPlugin(), (List<Serializer<?>>) serializers);
    } catch (IOException e) {
        e.printStackTrace();
        return;
    }
    if (configurations == null) {
        configurations = new LinkedConfig();
    } else {
        configurations.clear();
    }
    List<IValidator> validators = null;
    try {
        // Find all validators in WeaponMechanics
        validators = new JarInstancer(new JarFile(getFile())).createAllInstances(IValidator.class, getClassLoader(), true);
    } catch (IOException e) {
        e.printStackTrace();
    }
    // Fill configuration mappings (except config.yml)
    Configuration temp = new FileReader(debug, MechanicsCore.getListOfSerializers(), validators).fillAllFiles(getDataFolder(), "config.yml");
    try {
        configurations.add(temp);
    } catch (DuplicateKeyException e) {
        debug.error("Error loading config: " + e.getMessage());
    }
}
Also used : IValidator(me.deecaad.core.file.IValidator) Configuration(me.deecaad.core.file.Configuration) LinkedConfig(me.deecaad.core.file.LinkedConfig) JarInstancer(me.deecaad.core.file.JarInstancer) SerializerInstancer(me.deecaad.core.file.SerializerInstancer) FileReader(me.deecaad.core.file.FileReader) IOException(java.io.IOException) JarFile(java.util.jar.JarFile) DuplicateKeyException(me.deecaad.core.file.DuplicateKeyException) Serializer(me.deecaad.core.file.Serializer)

Aggregations

IOException (java.io.IOException)1 JarFile (java.util.jar.JarFile)1 Configuration (me.deecaad.core.file.Configuration)1 DuplicateKeyException (me.deecaad.core.file.DuplicateKeyException)1 FileReader (me.deecaad.core.file.FileReader)1 IValidator (me.deecaad.core.file.IValidator)1 JarInstancer (me.deecaad.core.file.JarInstancer)1 LinkedConfig (me.deecaad.core.file.LinkedConfig)1 Serializer (me.deecaad.core.file.Serializer)1 SerializerInstancer (me.deecaad.core.file.SerializerInstancer)1