Class TrackLoader

  • All Implemented Interfaces:
    ITrackLoader

    public class TrackLoader
    extends java.lang.Object
    implements ITrackLoader
    Author:
    Andi Hotz, (c) Sahits GmbH, 2015 Created on Jun 17, 2015
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.String fileName  
      private static java.lang.String SOUND_DIR  
      private java.util.HashMap<java.lang.String,​IPlayableTrack> soundMap  
      private java.util.concurrent.ScheduledExecutorService uiTimer  
      private org.springframework.oxm.Unmarshaller unmarshaller  
    • Constructor Summary

      Constructors 
      Constructor Description
      TrackLoader​(java.lang.String fileName)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private java.lang.String getPrefix​(java.lang.String fnm)
      Extract the name before the last '.'
      private javax.xml.transform.stream.StreamSource getSourceFromFile​(java.lang.String fileName)  
      private void loadLoop​(ch.sahits.game.sound.data.Tracks.Track track)  
      private void loadTrack​(ch.sahits.game.sound.data.Tracks.Track track)  
      IPlayableTrack loadTrack​(java.lang.String trackID)
      Load the track by it's id.
      private void loadTracks()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • soundMap

        private java.util.HashMap<java.lang.String,​IPlayableTrack> soundMap
      • unmarshaller

        @Autowired
        @Qualifier("jaxb2SoundMarshaller")
        private org.springframework.oxm.Unmarshaller unmarshaller
      • uiTimer

        @Autowired
        @Qualifier("uiTimer")
        private java.util.concurrent.ScheduledExecutorService uiTimer
      • fileName

        private final java.lang.String fileName
    • Constructor Detail

      • TrackLoader

        public TrackLoader​(java.lang.String fileName)
    • Method Detail

      • loadTracks

        @PostConstruct
        private void loadTracks()
      • loadTrack

        private void loadTrack​(ch.sahits.game.sound.data.Tracks.Track track)
      • loadLoop

        private void loadLoop​(ch.sahits.game.sound.data.Tracks.Track track)
      • loadTrack

        public IPlayableTrack loadTrack​(java.lang.String trackID)
        Description copied from interface: ITrackLoader
        Load the track by it's id.
        Specified by:
        loadTrack in interface ITrackLoader
        Parameters:
        trackID - track id is the filename without it's extension
        Returns:
        loaded track may be null if the track id does not exist.
      • getSourceFromFile

        private javax.xml.transform.stream.StreamSource getSourceFromFile​(java.lang.String fileName)
      • getPrefix

        private java.lang.String getPrefix​(java.lang.String fnm)
        Extract the name before the last '.'
        Parameters:
        fnm - filename
        Returns:
        file name without the extension.