Package net.minecraftforge.common.data
Class ExistingFileHelper
java.lang.Object
net.minecraftforge.common.data.ExistingFileHelper
Enables data providers to check if other data files currently exist. The
instance provided in the
GatherDataEvent
utilizes the standard
resources (via VanillaPack
), forge's resources, as well as any
extra resource packs passed in via the --existing
argument,
or mod resources via the --existing-mod
argument.-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
static class
-
Field Summary
Modifier and TypeFieldDescriptionprivate final SimpleReloadableResourceManager
private final boolean
private final com.google.common.collect.Multimap<ResourcePackType,
ResourceLocation> private final SimpleReloadableResourceManager
-
Constructor Summary
ConstructorDescriptionExistingFileHelper
(Collection<Path> existingPacks, boolean enable) Deprecated.ExistingFileHelper
(Collection<Path> existingPacks, Set<String> existingMods, boolean enable) Deprecated.ExistingFileHelper
(Collection<Path> existingPacks, Set<String> existingMods, boolean enable, String assetIndex, File assetsDir) -
Method Summary
Modifier and TypeMethodDescriptionboolean
exists
(ResourceLocation loc, ResourcePackType packType) Check if a given resource exists in the known resource packs.boolean
exists
(ResourceLocation loc, ResourcePackType packType, String pathSuffix, String pathPrefix) Check if a given resource exists in the known resource packs.boolean
Check if a given resource exists in the known resource packs.private ResourceLocation
getLocation
(ResourceLocation base, String suffix, String prefix) private IResourceManager
getManager
(ResourcePackType packType) getResource
(ResourceLocation loc, ResourcePackType packType) getResource
(ResourceLocation loc, ResourcePackType packType, String pathSuffix, String pathPrefix) boolean
void
trackGenerated
(ResourceLocation loc, ResourcePackType packType, String pathSuffix, String pathPrefix) Track the existence of a generated file.void
Track the existence of a generated file.
-
Field Details
-
clientResources
-
serverData
-
enable
private final boolean enable -
generated
-
-
Constructor Details
-
ExistingFileHelper
Deprecated. -
ExistingFileHelper
@Deprecated public ExistingFileHelper(Collection<Path> existingPacks, Set<String> existingMods, boolean enable) Deprecated.Create a new helper. This should probably NOT be used by mods, as the instance provided by forge is designed to be a central instance that tracks existence of generated data.Only create a new helper if you intentionally want to ignore the existence of other generated files.
- Parameters:
existingPacks
-existingMods
-enable
-
-
ExistingFileHelper
-
-
Method Details
-
getManager
-
getLocation
-
exists
Check if a given resource exists in the known resource packs.- Parameters:
loc
- the complete location of the resource, e.g."minecraft:textures/block/stone.png"
packType
- the type of resources to check- Returns:
true
if the resource exists in any pack,false
otherwise
-
exists
Check if a given resource exists in the known resource packs. This is a convenience method to avoid repeating type/prefix/suffix and instead use the common definitions inExistingFileHelper.ResourceType
, or a customExistingFileHelper.IResourceType
definition.- Parameters:
loc
- the base location of the resource, e.g."minecraft:block/stone"
type
- aExistingFileHelper.IResourceType
describing how to form the path to the resource- Returns:
true
if the resource exists in any pack,false
otherwise
-
exists
public boolean exists(ResourceLocation loc, ResourcePackType packType, String pathSuffix, String pathPrefix) Check if a given resource exists in the known resource packs.- Parameters:
loc
- the base location of the resource, e.g."minecraft:block/stone"
packType
- the type of resources to checkpathSuffix
- a string to append after the path, e.g.".json"
pathPrefix
- a string to append before the path, before a slash, e.g."models"
- Returns:
true
if the resource exists in any pack,false
otherwise
-
trackGenerated
Track the existence of a generated file. This is a convenience method to avoid repeating type/prefix/suffix and instead use the common definitions inExistingFileHelper.ResourceType
, or a customExistingFileHelper.IResourceType
definition.This should be called by data providers immediately when a new data object is created, i.e. not during
act
but instead when the "builder" (or whatever intermediate object) is created, such as aModelBuilder
.This represents a promise to generate the file later, since other datagen may rely on this file existing.
- Parameters:
loc
- the base location of the resource, e.g."minecraft:block/stone"
type
- aExistingFileHelper.IResourceType
describing how to form the path to the resource
-
trackGenerated
public void trackGenerated(ResourceLocation loc, ResourcePackType packType, String pathSuffix, String pathPrefix) Track the existence of a generated file.This should be called by data providers immediately when a new data object is created, i.e. not during
act
but instead when the "builder" (or whatever intermediate object) is created, such as aModelBuilder
.This represents a promise to generate the file later, since other datagen may rely on this file existing.
- Parameters:
loc
- the base location of the resource, e.g."minecraft:block/stone"
packType
- the type of resources to checkpathSuffix
- a string to append after the path, e.g.".json"
pathPrefix
- a string to append before the path, before a slash, e.g."models"
-
getResource
public IResource getResource(ResourceLocation loc, ResourcePackType packType, String pathSuffix, String pathPrefix) throws IOException - Throws:
IOException
-
getResource
- Throws:
IOException
-
isEnabled
public boolean isEnabled()- Returns:
true
if validation is enabled,false
otherwise
-