001    package net.minecraft.world.storage;
002    
003    import cpw.mods.fml.relauncher.Side;
004    import cpw.mods.fml.relauncher.SideOnly;
005    import java.util.List;
006    import net.minecraft.util.IProgressUpdate;
007    
008    public interface ISaveFormat
009    {
010        /**
011         * Returns back a loader for the specified save directory
012         */
013        ISaveHandler getSaveLoader(String var1, boolean var2);
014    
015        @SideOnly(Side.CLIENT)
016        List getSaveList();
017    
018        void flushCache();
019    
020        @SideOnly(Side.CLIENT)
021    
022        /**
023         * gets the world info
024         */
025        WorldInfo getWorldInfo(String var1);
026    
027        /**
028         * @args: Takes one argument - the name of the directory of the world to delete. @desc: Delete the world by deleting
029         * the associated directory recursively.
030         */
031        boolean deleteWorldDirectory(String var1);
032    
033        @SideOnly(Side.CLIENT)
034    
035        /**
036         * @args: Takes two arguments - first the name of the directory containing the world and second the new name for
037         * that world. @desc: Renames the world by storing the new name in level.dat. It does *not* rename the directory
038         * containing the world data.
039         */
040        void renameWorld(String var1, String var2);
041    
042        /**
043         * Checks if the save directory uses the old map format
044         */
045        boolean isOldMapFormat(String var1);
046    
047        /**
048         * Converts the specified map to the new map format. Args: worldName, loadingScreen
049         */
050        boolean convertMapFormat(String var1, IProgressUpdate var2);
051    
052        @SideOnly(Side.CLIENT)
053    
054        /**
055         * Return whether the given world can be loaded.
056         */
057        boolean canLoadWorld(String var1);
058    }