80 lines
1.9 KiB
Java
80 lines
1.9 KiB
Java
package com.hypixel.hytale.assetstore;
|
|
|
|
import com.hypixel.hytale.common.plugin.PluginManifest;
|
|
import java.nio.file.FileSystem;
|
|
import java.nio.file.Path;
|
|
import javax.annotation.Nonnull;
|
|
import javax.annotation.Nullable;
|
|
|
|
public class AssetPack {
|
|
@Nonnull
|
|
private final String name;
|
|
@Nonnull
|
|
private final Path root;
|
|
@Nullable
|
|
private final FileSystem fileSystem;
|
|
private final boolean isImmutable;
|
|
private final PluginManifest manifest;
|
|
private final Path packLocation;
|
|
|
|
public AssetPack(Path packLocation, @Nonnull String name, @Nonnull Path root, @Nullable FileSystem fileSystem, boolean isImmutable, PluginManifest manifest) {
|
|
this.name = name;
|
|
this.root = root;
|
|
this.fileSystem = fileSystem;
|
|
this.isImmutable = isImmutable;
|
|
this.manifest = manifest;
|
|
this.packLocation = packLocation;
|
|
}
|
|
|
|
@Nonnull
|
|
public String getName() {
|
|
return this.name;
|
|
}
|
|
|
|
@Nonnull
|
|
public Path getRoot() {
|
|
return this.root;
|
|
}
|
|
|
|
@Nullable
|
|
public FileSystem getFileSystem() {
|
|
return this.fileSystem;
|
|
}
|
|
|
|
public PluginManifest getManifest() {
|
|
return this.manifest;
|
|
}
|
|
|
|
public boolean isImmutable() {
|
|
return this.isImmutable;
|
|
}
|
|
|
|
public Path getPackLocation() {
|
|
return this.packLocation;
|
|
}
|
|
|
|
@Override
|
|
public boolean equals(@Nullable Object o) {
|
|
if (this == o) {
|
|
return true;
|
|
} else if (o != null && this.getClass() == o.getClass()) {
|
|
AssetPack assetPack = (AssetPack)o;
|
|
return !this.name.equals(assetPack.name) ? false : this.root.equals(assetPack.root);
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public int hashCode() {
|
|
int result = this.name.hashCode();
|
|
return 31 * result + this.root.hashCode();
|
|
}
|
|
|
|
@Nonnull
|
|
@Override
|
|
public String toString() {
|
|
return "AssetPack{name='" + this.name + "', root=" + this.root + ", fileSystem=" + this.fileSystem + "}";
|
|
}
|
|
}
|