    001    package cpw.mods.fml.common;
    002
    003    import java.io.File;
    004    import java.util.List;
    005    import java.util.Set;
    006
    007    import com.google.common.eventbus.EventBus;
    008
    009    import cpw.mods.fml.common.versioning.ArtifactVersion;
    010    import cpw.mods.fml.common.versioning.VersionRange;
    011
    012    public class InjectedModContainer implements ModContainer
    013    {
    014        private File source;
    015        private ModContainer wrappedContainer;
    016
    017        public InjectedModContainer(ModContainer mc, File source)
    018        {
    019            this.source = source;
    020            this.wrappedContainer = mc;
    021        }
    022
    023        public String getModId()
    024        {
    025            return wrappedContainer.getModId();
    026        }
    027
    028        public String getName()
    029        {
    030            return wrappedContainer.getName();
    031        }
    032
    033        public String getVersion()
    034        {
    035            return wrappedContainer.getVersion();
    036        }
    037
    038        public File getSource()
    039        {
    040            return source;
    041        }
    042
    043        public ModMetadata getMetadata()
    044        {
    045            return wrappedContainer.getMetadata();
    046        }
    047
    048        public void bindMetadata(MetadataCollection mc)
    049        {
    050            wrappedContainer.bindMetadata(mc);
    051        }
    052
    053        public void setEnabledState(boolean enabled)
    054        {
    055            wrappedContainer.setEnabledState(enabled);
    056        }
    057
    058        public Set<ArtifactVersion> getRequirements()
    059        {
    060            return wrappedContainer.getRequirements();
    061        }
    062
    063        public List<ArtifactVersion> getDependencies()
    064        {
    065            return wrappedContainer.getDependencies();
    066        }
    067
    068        public List<ArtifactVersion> getDependants()
    069        {
    070            return wrappedContainer.getDependants();
    071        }
    072
    073        public String getSortingRules()
    074        {
    075            return wrappedContainer.getSortingRules();
    076        }
    077
    078        public boolean registerBus(EventBus bus, LoadController controller)
    079        {
    080            return wrappedContainer.registerBus(bus, controller);
    081        }
    082
    083        public boolean matches(Object mod)
    084        {
    085            return wrappedContainer.matches(mod);
    086        }
    087
    088        public Object getMod()
    089        {
    090            return wrappedContainer.getMod();
    091        }
    092
    093        public ArtifactVersion getProcessedVersion()
    094        {
    095            return wrappedContainer.getProcessedVersion();
    096        }
    097
    098        @Override
    099        public boolean isNetworkMod()
    100        {
    101            return wrappedContainer.isNetworkMod();
    102        }
    103        @Override
    104        public boolean isImmutable()
    105        {
    106            return true;
    107        }
    108
    109        @Override
    110        public String getDisplayVersion()
    111        {
    112            return wrappedContainer.getDisplayVersion();
    113        }
    114
    115        @Override
    116        public VersionRange acceptableMinecraftVersionRange()
    117        {
    118            return wrappedContainer.acceptableMinecraftVersionRange();
    119        }
    120
    121        public WorldAccessContainer getWrappedWorldAccessContainer()
    122        {
    123            if (wrappedContainer instanceof WorldAccessContainer)
    124            {
    125                return (WorldAccessContainer) wrappedContainer;
    126            }
    127            else
    128            {
    129                return null;
    130            }
    131        }
    132    }