mirror of
https://github.com/GTMEGA/EndlessIDs.git
synced 2026-11-12 04:57:31 +00:00
41 lines
1.3 KiB
Java
41 lines
1.3 KiB
Java
package com.falsepattern.endlessids.mixin.plugin;
|
|||
|
|
|
||
|
|
import com.google.common.io.Files;
|
||
|
|
import lombok.val;
|
||
|
|
|
||
|
|
import java.nio.file.Path;
|
||
|
|
|
||
|
|
public enum TargetedMod {
|
||
|
|
|
||
|
|
VANILLA("Minecraft", "", "", true);
|
||
|
|
|
||
|
|
public final String modName;
|
||
|
|
public final String jarNamePrefixLowercase;
|
||
|
|
public final String jarNameContainsLowercase;
|
||
|
|
|
||
|
|
public final boolean loadInDevelopment;
|
||
|
|
|
||
|
|
TargetedMod(String modName, String jarNamePrefix, String jarNameContains, boolean loadInDevelopment) {
|
||
|
|
this.modName = modName;
|
||
|
|
this.jarNamePrefixLowercase = jarNamePrefix.toLowerCase();
|
||
|
|
this.jarNameContainsLowercase = jarNameContains.toLowerCase();
|
||
|
|
this.loadInDevelopment = loadInDevelopment;
|
||
|
|
}
|
||
|
|
|
||
|
|
@SuppressWarnings("UnstableApiUsage")
|
||
|
|
public boolean isMatchingJar(Path path) {
|
||
|
|
val pathString = path.toString();
|
||
|
|
val nameLowerCase = Files.getNameWithoutExtension(pathString).toLowerCase();
|
||
|
|
val fileExtension = Files.getFileExtension(pathString);
|
||
|
|
|
||
|
|
return "jar".equals(fileExtension) && nameLowerCase.startsWith(jarNamePrefixLowercase) && nameLowerCase.contains(jarNameContainsLowercase);
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public String toString() {
|
||
|
|
return "TargetedMod{" +
|
||
|
|
"modName='" + modName + '\'' +
|
||
|
|
", jarNamePrefixLowercase='" + jarNamePrefixLowercase + '\'' +
|
||
|
|
'}';
|
||
|
|
}
|
||
|
|
}
|