libreccm-legacy/ccm-rssfeed/src/com/arsdigita/london/rss/ui/RSSComponent.java

47 lines
1.4 KiB
Java
Executable File

/*
* 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));
}
}