/* * Copyright (C) 2001 ArsDigita Corporation. All Rights Reserved. * * The contents of this file are subject to the ArsDigita Public * License (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of * the License at http://www.arsdigita.com/ADPL.txt * * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * */ package com.arsdigita.london.rss.ui; import com.arsdigita.london.rss.RSSChannel; import com.arsdigita.london.rss.RSSRenderer; import com.arsdigita.bebop.PageState; import com.arsdigita.bebop.SimpleComponent; import com.arsdigita.xml.Element; public abstract class RSSComponent extends SimpleComponent { private String m_element; private String m_xmlns; public RSSComponent(String element, String xmlns) { m_element = element; m_xmlns = xmlns; } protected abstract RSSChannel getChannel(PageState state); public void generateXML(PageState state, Element parent) { Element content = parent.newChildElement(m_element, m_xmlns); RSSChannel channel = getChannel(state); content.addContent(RSSRenderer.generateXML(channel)); } }