001    /*
002     * Copyright 1999,2004 The Apache Software Foundation.
003     * 
004     * Licensed under the Apache License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     * 
008     *      http://www.apache.org/licenses/LICENSE-2.0
009     * 
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013     * See the License for the specific language governing permissions and
014     * limitations under the License.
015     */
016    
017    package org.apache.commons.feedparser;
018    
019    
020    /**
021     *
022     * @author <a href="mailto:burton@apache.org">Kevin A. Burton (burtonator)</a>
023     * @version $Id: FeedLifecycleListener.java 373614 2006-01-30 22:31:21Z mvdb $
024     */
025    public interface FeedLifecycleListener {
026    
027        /**
028         * Called prior to event parsing to signal the parsing of a new feed.
029         *
030         * @throws FeedParserListener Possibly wraping another exception
031         * 
032         */
033        public void init() throws FeedParserException;
034    
035        /**
036         * Set this context that this FeedParserListener is executing within.  This
037         * can be used with anonymous listeners to pass contextual information about
038         * threads they are working within, etc.
039         *
040         * 
041         */
042        public void setContext( Object context ) throws FeedParserException;
043        public Object getContext() throws FeedParserException;
044    
045        /**
046         * Called when the feed has finished parsing.
047         *
048         * 
049         */
050        public void finished() throws FeedParserException;
051    
052    }