Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright (C) 2011 ritwik.net
  *
  * Licensed 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.
 */
package com.openyelp.server;
public class JsonRpcServletTransport implements JsonRpcServerTransport {
    private static final int BUFF_LENGTH = 1024;
    private final HttpServletRequest req;
    private final HttpServletResponse resp;
        this. = req;
        this. = resp;
    }
    public String readRequest() throws Exception {
        InputStream in = null;
        try {
    		String body = "";
            in = .getInputStream();
            ByteBuffer byteData = readToByteBuffer(in);
			body = Charset.forName("UTF-8").decode(byteData).toString();
            return body;
        } finally {
            if (in != null) {
                in.close();
            }
        }
    }
	private static final int bufferSize = 0x20000; // ~130K.
	public static ByteBuffer readToByteBuffer(InputStream inStream)
			throws IOException {
		byte[] buffer = new byte[];
		int read;
		while (true) {
			read = inStream.read(buffer);
			if (read == -1)
				break;
			outStream.write(buffer, 0, read);
		}
		ByteBuffer byteData = ByteBuffer.wrap(outStream.toByteArray());
		return byteData;
	}
    public void writeResponse(String responseDatathrows Exception {
    	.setCharacterEncoding("UTF-8");
        byte[] data = responseData.getBytes(.getCharacterEncoding());
        .addHeader("Content-Type""application/json");
        .setHeader("Content-Length", Integer.toString(data.length));
        PrintWriter out = null;
        try {
            out = .getWriter();
            out.write(responseData);
            out.flush();
        } finally {
            if (out != null) {
                out.close();
            }
        }
    }
New to GrepCode? Check out our FAQ X