comparison src/org/eclipse/jetty/io/bio/StringEndPoint.java @ 802:3428c60d7cfc

replace jetty jars with source
author Franklin Schmidt <fschmidt@gmail.com>
date Wed, 07 Sep 2016 21:15:48 -0600
parents
children
comparison
equal deleted inserted replaced
801:6a21393191c1 802:3428c60d7cfc
1 //
2 // ========================================================================
3 // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd.
4 // ------------------------------------------------------------------------
5 // All rights reserved. This program and the accompanying materials
6 // are made available under the terms of the Eclipse Public License v1.0
7 // and Apache License v2.0 which accompanies this distribution.
8 //
9 // The Eclipse Public License is available at
10 // http://www.eclipse.org/legal/epl-v10.html
11 //
12 // The Apache License v2.0 is available at
13 // http://www.opensource.org/licenses/apache2.0.php
14 //
15 // You may elect to redistribute this code under either of these licenses.
16 // ========================================================================
17 //
18
19 package org.eclipse.jetty.io.bio;
20
21 import java.io.ByteArrayInputStream;
22 import java.io.ByteArrayOutputStream;
23
24 import org.eclipse.jetty.util.StringUtil;
25
26 /**
27 *
28 *
29 * To change the template for this generated type comment go to
30 * Window - Preferences - Java - Code Generation - Code and Comments
31 */
32 public class StringEndPoint extends StreamEndPoint
33 {
34 String _encoding=StringUtil.__UTF8;
35 ByteArrayInputStream _bin = new ByteArrayInputStream(new byte[0]);
36 ByteArrayOutputStream _bout = new ByteArrayOutputStream();
37
38 public StringEndPoint()
39 {
40 super(null,null);
41 _in=_bin;
42 _out=_bout;
43 }
44
45 public StringEndPoint(String encoding)
46 {
47 this();
48 if (encoding!=null)
49 _encoding=encoding;
50 }
51
52 public void setInput(String s)
53 {
54 try
55 {
56 byte[] bytes = s.getBytes(_encoding);
57 _bin=new ByteArrayInputStream(bytes);
58 _in=_bin;
59 _bout = new ByteArrayOutputStream();
60 _out=_bout;
61 _ishut=false;
62 _oshut=false;
63 }
64 catch(Exception e)
65 {
66 throw new IllegalStateException(e.toString());
67 }
68 }
69
70 public String getOutput()
71 {
72 try
73 {
74 String s = new String(_bout.toByteArray(),_encoding);
75 _bout.reset();
76 return s;
77 }
78 catch(final Exception e)
79 {
80 throw new IllegalStateException(_encoding)
81 {
82 {initCause(e);}
83 };
84 }
85 }
86
87 /**
88 * @return <code>true</code> if there are bytes remaining to be read from the encoded input
89 */
90 public boolean hasMore()
91 {
92 return _bin.available()>0;
93 }
94 }