Commit Jocelyn changes.
This commit is contained in:
64
src/io/http_input_stream.e
Normal file
64
src/io/http_input_stream.e
Normal file
@@ -0,0 +1,64 @@
|
||||
note
|
||||
description: "Summary description for {HTTP_INPUT_STREAM}."
|
||||
author: ""
|
||||
date: "$Date$"
|
||||
revision: "$Revision$"
|
||||
|
||||
class
|
||||
HTTP_INPUT_STREAM
|
||||
|
||||
create
|
||||
make
|
||||
|
||||
feature {NONE} -- Initialization
|
||||
|
||||
make (a_socket: like source)
|
||||
do
|
||||
source := a_socket
|
||||
create last_string.make_empty
|
||||
end
|
||||
|
||||
source: TCP_STREAM_SOCKET
|
||||
|
||||
feature -- Status Report
|
||||
|
||||
is_readable: BOOLEAN
|
||||
-- Is readable?
|
||||
do
|
||||
Result := source.is_open_read
|
||||
end
|
||||
|
||||
feature -- Basic operation
|
||||
|
||||
read_line
|
||||
require
|
||||
is_readable: is_readable
|
||||
do
|
||||
last_string.wipe_out
|
||||
if source.socket_ok then
|
||||
source.read_line_thread_aware
|
||||
last_string.append_string (source.last_string)
|
||||
end
|
||||
end
|
||||
|
||||
read_stream (nb_char: INTEGER)
|
||||
-- Read a string of at most `nb_char' bound characters
|
||||
-- or until end of file.
|
||||
-- Make result available in `last_string'.
|
||||
require
|
||||
nb_char_positive: nb_char > 0
|
||||
is_readable: is_readable
|
||||
do
|
||||
last_string.wipe_out
|
||||
if source.socket_ok then
|
||||
source.read_stream_thread_aware (nb_char)
|
||||
last_string.append_string (source.last_string)
|
||||
end
|
||||
end
|
||||
|
||||
feature -- Access
|
||||
|
||||
last_string: STRING
|
||||
-- Last string read
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user