1
0
mirror of https://github.com/essentials/Essentials.git synced 2025-08-15 11:04:29 +02:00

Store filename as key in zippedFiles

This commit is contained in:
snowleo
2012-11-03 00:30:45 +01:00
parent c60beda40f
commit aba2540bcd

View File

@@ -108,17 +108,9 @@ public abstract class StorageObjectMap<I> extends CacheLoader<String, I> impleme
{ {
continue; continue;
} }
try String shortName = name.substring(0, name.length() - 4);
{ addFileToKeys(shortName);
String shortName = name.substring(0, name.length() - 4); zippedfiles.put(name, file);
addFileToKeys(shortName);
final String decodedName = Util.decodeFileName(shortName).toLowerCase(Locale.ENGLISH);
zippedfiles.put(decodedName, file);
}
catch (InvalidNameException ex)
{
ess.getLogger().log(Level.WARNING, "Invalid filename " + name + " in " + file.getAbsoluteFile(), ex);
}
} }
} }
finally finally
@@ -171,9 +163,10 @@ public abstract class StorageObjectMap<I> extends CacheLoader<String, I> impleme
{ {
file.delete(); file.delete();
} }
if (zippedfiles.containsKey(lowerCaseName)) String sanitizedFilename = Util.sanitizeFileName(name) + ".yml";
if (zippedfiles.containsKey(sanitizedFilename))
{ {
zippedfiles.put(lowerCaseName, null); zippedfiles.put(sanitizedFilename, null);
} }
} }
@@ -201,7 +194,7 @@ public abstract class StorageObjectMap<I> extends CacheLoader<String, I> impleme
if (!file.exists()) if (!file.exists())
{ {
extractFileFromZip(name, sanitizedFilename, file); extractFileFromZip(sanitizedFilename, file);
} }
return file; return file;
} }
@@ -212,10 +205,9 @@ public abstract class StorageObjectMap<I> extends CacheLoader<String, I> impleme
loadAllObjectsAsync(); loadAllObjectsAsync();
} }
private void extractFileFromZip(final String name, String sanitizedFilename, File file) private void extractFileFromZip(String sanitizedFilename, File file)
{ {
String lowerCaseName = name.toLowerCase(Locale.ENGLISH); File zipFile = zippedfiles.get(sanitizedFilename);
File zipFile = zippedfiles.get(lowerCaseName);
if (zipFile != null) if (zipFile != null)
{ {
try try