Return-Path: Delivered-To: apmail-incubator-abdera-commits-archive@locus.apache.org Received: (qmail 37326 invoked from network); 22 Nov 2007 21:42:22 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 22 Nov 2007 21:42:22 -0000 Received: (qmail 85242 invoked by uid 500); 22 Nov 2007 21:42:09 -0000 Delivered-To: apmail-incubator-abdera-commits-archive@incubator.apache.org Received: (qmail 85222 invoked by uid 500); 22 Nov 2007 21:42:09 -0000 Mailing-List: contact abdera-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: abdera-dev@incubator.apache.org Delivered-To: mailing list abdera-commits@incubator.apache.org Received: (qmail 85213 invoked by uid 99); 22 Nov 2007 21:42:09 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 22 Nov 2007 13:42:09 -0800 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 22 Nov 2007 21:42:19 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 226601A9832; Thu, 22 Nov 2007 13:41:58 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r597500 - /incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/impl/SimpleResponseContext.java Date: Thu, 22 Nov 2007 21:41:57 -0000 To: abdera-commits@incubator.apache.org From: jmsnell@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20071122214158.226601A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jmsnell Date: Thu Nov 22 13:41:57 2007 New Revision: 597500 URL: http://svn.apache.org/viewvc?rev=597500&view=rev Log: Simple base impl of an AbstractResponseContext; intended to make it easier to create custom ResponseContext implementations Added: incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/impl/SimpleResponseContext.java Added: incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/impl/SimpleResponseContext.java URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/impl/SimpleResponseContext.java?rev=597500&view=auto ============================================================================== --- incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/impl/SimpleResponseContext.java (added) +++ incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/impl/SimpleResponseContext.java Thu Nov 22 13:41:57 2007 @@ -0,0 +1,79 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. The ASF licenses this file to You +* under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. For additional information regarding +* copyright in this work, please see the NOTICE file in the top level +* directory of this distribution. +*/ +package org.apache.abdera.protocol.server.impl; + +import java.io.IOException; +import java.io.OutputStream; +import java.io.OutputStreamWriter; +import java.io.Writer; + +/** + * A simple base implementation of AbstractResponseContext that makes it a bit + * easier to create custom ResponseContext implementations + * + * e.g. new SimpleResponseContext() { + * public boolean hasEntity() { return true; } + * public void writeEntity(Writer writer) { ... } + * } + */ +public abstract class SimpleResponseContext + extends AbstractResponseContext { + + protected String encoding = "UTF-8"; + + protected void setEncoding(String encoding) { + this.encoding = encoding; + } + + protected String getEncoding() { + return this.encoding; + } + + public void writeTo( + OutputStream out) + throws IOException { + if (hasEntity()) + writeTo(new OutputStreamWriter(out,encoding)); + } + + public void writeTo( + Writer writer) + throws IOException { + if (hasEntity()) + writeEntity(writer); + } + + protected abstract void writeEntity( + Writer writer) + throws IOException; + + public void writeTo( + OutputStream out, + org.apache.abdera.writer.Writer writer) + throws IOException { + throw new UnsupportedOperationException(); + } + + public void writeTo( + Writer javaWriter, + org.apache.abdera.writer.Writer abderaWriter) + throws IOException { + throw new UnsupportedOperationException(); + } + +}