package org.osmdroid.bugtestfragments; import org.osmdroid.ISampleFactory; import org.osmdroid.samplefragments.BaseSampleFragment; /** * Factory for all bug driver classes */ public final class BugFactory implements ISampleFactory { private final Class<? extends BaseSampleFragment>[] mSamples; private static ISampleFactory _instance; public static ISampleFactory getInstance() { if (_instance == null) { _instance = new BugFactory(); } return _instance; } private BugFactory() { mSamples = new Class[]{ Bug82WinDeath.class, SampleBug57.class, Bug382Crash.class, Bug164EndlessOnScolls.class, Bug419Zoom.class, Bug445Caching.class, Bug512Marker.class, Bug512CacheManagerWp.class, }; } public BaseSampleFragment getSample(int index) { try { return mSamples[index].newInstance(); } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } return null; } public int count() { return mSamples.length; } }