package com.chickenkiller.upods2.utils;

import com.chickenkiller.upods2.controllers.internet.BackendManager;
import com.chickenkiller.upods2.controllers.internet.EpisodesXMLHandler;
import com.chickenkiller.upods2.models.Episode;

import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;

import java.io.StringReader;
import java.util.ArrayList;

import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;

import okhttp3.Request;

/**
 * Created by Alon Zilberman on 29/03/2016.
 */
public class HelpFunctions {

    public static ArrayList<Episode> parseEpisodes(String url) throws Exception {
        Request episodesRequest = new Request.Builder().url(url).build();
        String response = BackendManager.getInstance().sendSimpleSynchronicRequest(episodesRequest);
        SAXParserFactory spf = SAXParserFactory.newInstance();
        SAXParser sp = spf.newSAXParser();
        XMLReader xr = sp.getXMLReader();
        EpisodesXMLHandler episodesXMLHandler = new EpisodesXMLHandler();
        xr.setContentHandler(episodesXMLHandler);
        InputSource inputSource = new InputSource(new StringReader(response));
        xr.parse(inputSource);
        return episodesXMLHandler.getParsedEpisods();
    }
}