package kornell.gui.client.sequence; import java.util.logging.Logger; import com.google.gwt.place.shared.PlaceController; import com.google.web.bindery.event.shared.EventBus; import kornell.api.client.KornellSession; import kornell.gui.client.presentation.classroom.ClassroomPlace; import kornell.scorm.client.scorm12.SCORM12Sequencer; public class SequencerFactoryImpl implements SequencerFactory { Logger logger = Logger.getLogger(SequencerFactoryImpl.class.getName()); private KornellSession session; private EventBus bus; public SequencerFactoryImpl(EventBus bus, PlaceController ctrl, KornellSession session) { this.session = session; this.bus = bus; } @Override public Sequencer withPlace(ClassroomPlace place) { logger.info("Creating course sequencer"); Sequencer sequencer = null; switch (place.getContentSpec()){ case SCORM12: sequencer = new SCORM12Sequencer(bus, session); break; case KNL: sequencer = new PrefetchSequencer(bus, session); break; } return sequencer.withPlace(place); } }