ContentProducer.java revision 069490a5ca2fd1988d29daf45d892f47ad665115
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/*
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * $HeadURL: http://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk/module-main/src/main/java/org/apache/http/entity/ContentProducer.java $
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * $Revision: 496070 $
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * $Date: 2007-01-14 04:18:34 -0800 (Sun, 14 Jan 2007) $
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ====================================================================
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Licensed to the Apache Software Foundation (ASF) under one
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * or more contributor license agreements.  See the NOTICE file
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * distributed with this work for additional information
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * regarding copyright ownership.  The ASF licenses this file
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * to you under the Apache License, Version 2.0 (the
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * "License"); you may not use this file except in compliance
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * with the License.  You may obtain a copy of the License at
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *   http://www.apache.org/licenses/LICENSE-2.0
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Unless required by applicable law or agreed to in writing,
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * software distributed under the License is distributed on an
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * KIND, either express or implied.  See the License for the
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * specific language governing permissions and limitations
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * under the License.
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ====================================================================
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * This software consists of voluntary contributions made by many
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * individuals on behalf of the Apache Software Foundation.  For more
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * information on the Apache Software Foundation, please see
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * <http://www.apache.org/>.
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)package org.apache.http.entity;
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)import java.io.IOException;
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)import java.io.OutputStream;
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/**
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * An abstract entity content producer.
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *<p>Content producers are expected to be able to produce their
415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * content multiple times</p>
425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @author <a href="mailto:oleg at ural.ru">Oleg Kalnichevski</a>
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @version $Revision: 496070 $
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) *
475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @since 4.0
485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)public interface ContentProducer {
505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    void writeTo(OutputStream outstream) throws IOException;
525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)