/** * Initializes file provider. Creates streamable file factory and service, seeks to start position */ private void init() throws IOException { IStreamableFileFactory factory = (IStreamableFileFactory) ScopeUtils.getScopeService( scope, IStreamableFileFactory.class, StreamableFileFactory.class); IStreamableFileService service; IStreamableFile streamFile; if (file == null && playlistXMLUrl != null) { // NIELS JOUBERT streamFile = new CompositeFile(playlistXMLUrl, urlResolver); } else { service = factory.getService(file); if (service == null) { log.error("No service found for " + file.getAbsolutePath()); return; } streamFile = service.getStreamableFile(file); } reader = streamFile.getReader(scope); if (start > 0) { seek(start); } }