class SSLSocket(object): def __init__(self, java_socket, keyfile=None): self.java_ssl_socket = self._nycs_socket(java_socket, keyfile) self._in_buf = BufferedInputStream( self.java_ssl_socket.getInputStream()) self._out_buf = BufferedOutputStream( self.java_ssl_socket.getOutputStream()) # Not-Yet-Commons-SSL Socket def _nycs_socket(self, java_socket, keyfile=None): host = java_socket.getInetAddress().getHostAddress() port = java_socket.getPort() client = SSLClient() client.setCheckHostname(False) client.setCheckExpiry(False) client.setCheckCRL(False) client.setKeyMaterial(KeyMaterial(keyfile, "")) client.setTrustMaterial(TrustMaterial.TRUST_ALL) java_ssl_socket = client.createSocket(java_socket, host, port, 0) java_ssl_socket.startHandshake() return java_ssl_socket def recv(self, n=4096): data = jarray.zeros(n, 'b') m = self._in_buf.read(data, 0, n) if m <= 0: return "" if m < n: data = data[:m] return data.tostring() def send(self, s): self._out_buf.write(s) self._out_buf.flush() return len(s)
class SSLSocket(object): def __init__(self, java_socket, keyfile=None): self.java_ssl_socket = self._nycs_socket(java_socket, keyfile) self._in_buf = BufferedInputStream(self.java_ssl_socket.getInputStream()) self._out_buf = BufferedOutputStream(self.java_ssl_socket.getOutputStream()) # Not-Yet-Commons-SSL Socket def _nycs_socket(self, java_socket, keyfile=None): host = java_socket.getInetAddress().getHostAddress() port = java_socket.getPort() client = SSLClient() client.setCheckHostname(False) client.setCheckExpiry(False) client.setCheckCRL(False) client.setKeyMaterial(KeyMaterial(keyfile, "")) client.setTrustMaterial(TrustMaterial.TRUST_ALL) java_ssl_socket = client.createSocket(java_socket, host, port, 0) java_ssl_socket.startHandshake() return java_ssl_socket def recv(self, n=4096): data = jarray.zeros(n, 'b') m = self._in_buf.read(data, 0, n) if m <= 0: return "" if m < n: data = data[:m] return data.tostring() def send(self, s): self._out_buf.write(s) self._out_buf.flush() return len(s)
class ConnReader: def __init__(self, conn): self.conn = conn self.url = conn.getURL().toExternalForm() fields = self.conn.getHeaderFields() self.headers = Headers() for key in fields: if key != None: self.headers[key.lower()] = conn.getHeaderField(key) self.bs = BufferedInputStream(self.conn.getInputStream()) def read(self, *args): if len(args) == 1: size = args[0] buf = zeros(size, 'b') off = 0 while size > 0: count = self.bs.read(buf, off, size) if count == -1: buf = buf[:off] break off += count size -= count return buf.tostring() else: return self.read(int(self.headers['content-length'])) def info(self): return Headers(self.headers) def close(self): self.bs.close()
def read_entry(): is_ = None try: is_ = BufferedInputStream(zip_file.getInputStream(entry)) size = entry.getSize() data = jarray.zeros(size, 'b') nread_tot = 0 while nread_tot < size: nread = is_.read(data, nread_tot, size-nread_tot) if nread <= 0: raise java.io.IOException('Read ended prematurely') nread_tot += nread return data finally: if not is_ is None: is_.close()
def read_entry(): is_ = None try: is_ = BufferedInputStream(zip_file.getInputStream(entry)) size = entry.getSize() data = jarray.zeros(size, 'b') nread_tot = 0 while nread_tot < size: nread = is_.read(data, nread_tot, size - nread_tot) if nread <= 0: raise java.io.IOException('Read ended prematurely') nread_tot += nread return data finally: if not is_ is None: is_.close()
class SafeUNIXSocket(object): def __init__(self, socketpath): self.sock = AFUNIXSocket.newInstance() self.sock.connect(AFUNIXSocketAddress(File(socketpath))) self._in_buf = BufferedInputStream(self.sock.getInputStream()) self._out_buf = BufferedOutputStream(self.sock.getOutputStream()) def recv(self, n=4096): data = jarray.zeros(n, 'b') m = self._in_buf.read(data, 0, n) if m <= 0: return "" if m < n: data = data[:m] return data.tostring() def send(self, s): self._out_buf.write(s) self._out_buf.flush() return len(s)
def processResponse(self, response): #threadContext = HTTPPluginControl.getThreadHTTPClientContext() #threadContext.resumeClock() # We just want to read data flow - so we can scale bodyLength = 0 bin = BufferedInputStream(response.getInputStream()) buf = jarray.zeros(8192, 'b') lenBuf = 0 while lenBuf != -1: lenBuf = bin.read(buf) bodyLength += lenBuf bin.close() grinder.getLogger().output("INFO: Download of %d bytes finished" % (bodyLength)) #threadContext.pauseClock(); # Update statistics with body size testStatistics = grinder.getStatistics() if (testStatistics.isTestInProgress()): testStatistics.getForCurrentTest().addLong( "httpplugin.responseLength", bodyLength)
from java.io import File as F from java.io import FileInputStream as FI from java.io import FileOutputStream as FO from java.io import BufferedInputStream as BI from java.io import BufferedOutputStream as BO from java.util.zip import InflaterInputStream as II file_read = F("file5.txt") file_write = F("file6.txt") bi = BI(II(FI(file_read))) bo = BO(FO(file_write)) while True: val = bi.read() if val != -1: bo.write(val) else: break bi.close() bo.close()
# -*- coding: utf-8 -*- from __future__ import unicode_literals from java.io import BufferedOutputStream as BO from java.io import BufferedInputStream as BI from java.io import FileInputStream as FI from java.io import FileOutputStream as FO f_read = FI("file1.txt") b_read = BI(f_read) f_write = FO("file2.txt") b_write = BO(f_write) while True: ch = b_read.read() if ch != -1: b_write.write(ch) else: break b_read.close() f_read.close() b_write.close() f_write.close()