@Override
    public BaseFeed parse(URL url) {
        boolean hasEntryThresholdConfig = this.configManager.rtmsConfig().getProperty("rtms.entryThreshold") != null;
        int entryThreshold = 5;
        if (hasEntryThresholdConfig) {
            entryThreshold = Integer.parseInt(this.configManager.rtmsConfig().getProperty("rtms.entryThreshold"));
        }

        SyndFeedInput input = new SyndFeedInput();

        try {
            SyndFeed feed = input.build(new XmlReader(url));
            this.feed = hasEntryThresholdConfig ? new RSSFeed(feed, entryThreshold) : new RSSFeed(feed);

            this.initForFeed();
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (FeedException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }

        this.parseEntries(feed);

        return this.feed;
    }