Automatic generation produced by ISE Eiffel

Classes Clusters Cluster hierarchy Chart Relations Flat contracts Go to:
note description: "Files accessed via HTTP" legal: "See notice at end of class." status: "See notice at end of class." date: "$Date: 2020-05-19 06:40:37 -0800 (Tue, 19 May 2020) $" revision: "$Revision: 104267 $" class interface HTTP_PROTOCOL create make (addr: like address) -- Create protocol. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE address_exists: addr /= Void ensure -- from DATA_RESOURCE address_set: address = addr feature -- Access address: NETWORK_RESOURCE_URL -- Address of URL -- (from NETWORK_RESOURCE) bytes_transferred: INTEGER_32 -- Number of transferred bytes -- (from NETWORK_RESOURCE) Check_instruction: INTEGER_32 = 7 -- Exception code for violated check -- (from EXCEP_CONST) Class_invariant: INTEGER_32 = 6 -- Exception code for violated class invariant -- (from EXCEP_CONST) Com_exception: INTEGER_32 = 28 -- Exception code for a COM error. -- (from EXCEP_CONST) Create_on_deferred: INTEGER_32 = 17 -- Create on deferred -- (from EXCEP_CONST) Developer_exception: INTEGER_32 = 24 -- Exception code for developer exception -- (from EXCEP_CONST) Dollar_applied_to_melted_feature: INTEGER_32 = 26 -- $ applied to melted feature -- (from EXCEP_CONST) Eiffel_runtime_fatal_error: INTEGER_32 = 25 -- Eiffel run-time fatal error -- (from EXCEP_CONST) Eiffel_runtime_panic: INTEGER_32 = 13 -- Eiffel run-time panic -- (from EXCEP_CONST) Exception_in_signal_handler: INTEGER_32 = 20 -- Exception in signal handler -- (from EXCEP_CONST) Exception_manager: EXCEPTION_MANAGER -- Exception manager -- (from EXCEPTION_MANAGER_FACTORY) ensure -- from EXCEPTION_MANAGER_FACTORY instance_free: class exception_manager_not_void: Result /= Void External_exception: INTEGER_32 = 18 -- Exception code for operating system error -- which does not set the errno variable -- (Unix-specific) -- (from EXCEP_CONST) Floating_point_exception: INTEGER_32 = 5 -- Exception code for floating point exception -- (from EXCEP_CONST) generating_type: TYPE [detachable HTTP_PROTOCOL] -- Type of current object -- (type of which it is a direct instance) -- (from ANY) ensure -- from ANY generating_type_not_void: Result /= Void generator: STRING_8 -- Name of current object's generating class -- (base class of the type of which it is a direct instance) -- (from ANY) ensure -- from ANY generator_not_void: Result /= Void generator_not_empty: not Result.is_empty hash_code: INTEGER_32 -- Hash function -- (from DATA_RESOURCE) ensure -- from HASHABLE good_hash_value: Result >= 0 Incorrect_inspect_value: INTEGER_32 = 9 -- Exception code for inspect value which is not one -- of the inspect constants, if there is no Else_part -- (from EXCEP_CONST) Io_exception: INTEGER_32 = 21 -- Exception code for I/O error -- (from EXCEP_CONST) last_packet: detachable STRING_8 -- Last packet read -- (from DATA_RESOURCE) last_packet_size: INTEGER_32 -- Size of last packet -- (from NETWORK_RESOURCE) location: STRING_8 -- Resource location require -- from DATA_RESOURCE address_exists: address /= Void Loop_invariant: INTEGER_32 = 11 -- Exception code for violated loop invariant -- (from EXCEP_CONST) Loop_variant: INTEGER_32 = 10 -- Exception code for non-decreased loop variant -- (from EXCEP_CONST) mode: INTEGER_32 -- Current mode -- (from DATA_RESOURCE) No_more_memory: INTEGER_32 = 2 -- Exception code for failed memory allocation -- (from EXCEP_CONST) Number_of_codes: INTEGER_32 = 31 -- How many codes are there to represent exceptions? -- (from EXCEP_CONST) Old_exception: INTEGER_32 = 30 -- Old exception code. -- (from EXCEP_CONST) Operating_system_exception: INTEGER_32 = 22 -- Exception code for operating system error -- which sets the errno variable -- (Unix-specific) -- (from EXCEP_CONST) Out_of_memory: INTEGER_32 = 15 -- Out of memory (cannot be ignored) -- (from EXCEP_CONST) port: INTEGER_32 -- Port used by service -- (from DATA_RESOURCE) ensure -- from DATA_RESOURCE result_non_negative: Result >= 0 Postcondition: INTEGER_32 = 4 -- Exception code for violated postcondition -- (from EXCEP_CONST) Precondition: INTEGER_32 = 3 -- Exception code for violated precondition -- (from EXCEP_CONST) proxy_host: STRING_8 -- Name or address of proxy host -- (from DATA_RESOURCE) require -- from DATA_RESOURCE proxy_supported: is_proxy_supported proxy_used: is_proxy_used ensure -- from DATA_RESOURCE result_not_empty: Result /= Void and then not Result.is_empty proxy_port: INTEGER_32 -- Port of proxy -- (from DATA_RESOURCE) require -- from DATA_RESOURCE proxy_supported: is_proxy_supported proxy_used: is_proxy_used ensure -- from DATA_RESOURCE result_non_negative: Result >= 0 read_buffer_size: INTEGER_32 -- Size of read buffer -- (from NETWORK_RESOURCE) Rescue_exception: INTEGER_32 = 14 -- Exception code for exception in rescue clause -- (from EXCEP_CONST) Resumption_failed: INTEGER_32 = 16 -- Resumption failed (retry did not succeed) -- (from EXCEP_CONST) Retrieve_exception: INTEGER_32 = 23 -- Exception code for retrieval error -- may be raised by retrieved in IO_MEDIUM. -- (from EXCEP_CONST) Routine_failure: INTEGER_32 = 8 -- Exception code for failed routine -- (from EXCEP_CONST) Runtime_check_exception: INTEGER_32 = 29 -- Exception code for runtime check being violated. -- (from EXCEP_CONST) Runtime_io_exception: INTEGER_32 = 27 -- Exception code for I/O error raised by runtime functions -- such as store/retrieve, file access... -- (from EXCEP_CONST) Serialization_exception: INTEGER_32 = 31 -- Serialization exception code. -- (from EXCEP_CONST) service: STRING_8 -- Name of service -- (from DATA_RESOURCE) Signal_exception: INTEGER_32 = 12 -- Exception code for operating system signal -- (from EXCEP_CONST) valid_code (c: INTEGER_32): BOOLEAN -- Is c a valid code to represent some kind of exceptions? -- (from EXCEP_CONST) Void_assigned_to_expanded: INTEGER_32 = 19 -- Exception code for assignment of void value -- to expanded entity -- (from EXCEP_CONST) Void_call_target: INTEGER_32 = 1 -- Exception code for feature applied to void reference -- (from EXCEP_CONST) feature -- Measurement count: INTEGER_32 -- Size of data resource Default_buffer_size: INTEGER_32 = 16384 -- Default size of read buffer. feature -- Comparison frozen deep_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void -- or attached to isomorphic object structures? -- (from ANY) ensure -- from ANY instance_free: class shallow_implies_deep: standard_equal (a, b) implies Result both_or_none_void: (a = Void) implies (Result = (b = Void)) same_type: (Result and (a /= Void)) implies (b /= Void and then a.same_type (b)) symmetric: Result implies deep_equal (b, a) frozen equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached -- to objects considered equal? -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.is_equal (b)) frozen is_deep_equal alias "≡≡≡" (other: HTTP_PROTOCOL): BOOLEAN -- Are Current and other attached to isomorphic object structures? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY shallow_implies_deep: standard_is_equal (other) implies Result same_type: Result implies same_type (other) symmetric: Result implies other.is_deep_equal (Current) is_equal (other: HTTP_PROTOCOL): BOOLEAN -- Is resource equal to other? -- (from DATA_RESOURCE) require -- from ANY other_not_void: other /= Void ensure -- from ANY symmetric: Result implies other ~ Current consistent: standard_is_equal (other) implies Result frozen standard_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached to -- field-by-field identical objects of the same type? -- Always uses default object comparison criterion. -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.standard_is_equal (b)) frozen standard_is_equal alias "" (other: HTTP_PROTOCOL): BOOLEAN -- Is other attached to an object of the same type -- as current object, and field-by-field identical to it? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY same_type: Result implies same_type (other) symmetric: Result implies other.standard_is_equal (Current) feature -- Status report address_exists: BOOLEAN -- Does address exists? -- (from NETWORK_RESOURCE) assertion_violation: BOOLEAN -- Is last exception originally due to a violated -- assertion or non-decreasing variant? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class class_name: detachable STRING_8 -- Name of the class that includes the recipient -- of original form of last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class conforms_to (other: ANY): BOOLEAN -- Does type of current object conform to type -- of other (as per Eiffel: The Language, chapter 13)? -- (from ANY) require -- from ANY other_not_void: other /= Void developer_exception_name: detachable STRING_8 -- Name of last developer-raised exception -- (from EXCEPTIONS) require -- from EXCEPTIONS applicable: is_developer_exception ensure -- from EXCEPTIONS instance_free: class error: BOOLEAN -- Has an error occurred? -- (from DATA_RESOURCE) error_code: INTEGER_32 -- Code of error -- (from DATA_RESOURCE) error_text (code: INTEGER_32): STRING_8 -- Textual description of error -- (from DATA_RESOURCE_ERROR_CONSTANTS) require -- from DATA_RESOURCE_ERROR_CONSTANTS positive_code: code > 0 exception: INTEGER_32 -- Code of last exception that occurred -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class exception_trace: detachable STRING_8 -- String representation of the exception trace -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class has_packet: BOOLEAN -- Is there a packet available in last_packet? -- (from DATA_RESOURCE) is_count_valid: BOOLEAN -- Is value in count valid? -- (from NETWORK_RESOURCE) is_developer_exception: BOOLEAN -- Is the last exception originally due to -- a developer exception? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class is_developer_exception_of_name (name: detachable STRING_8): BOOLEAN -- Is the last exception originally due to a developer -- exception of name name? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class is_hashable: BOOLEAN -- Are objects of current type hashable? -- (from DATA_RESOURCE) is_mode_set: BOOLEAN -- Has resource mode been set? -- (from DATA_RESOURCE) is_open: BOOLEAN -- Is resource open? -- (from NETWORK_RESOURCE) is_packet_pending: BOOLEAN -- Can another packet currently be read out? -- (from NETWORK_RESOURCE) is_proxy_supported: BOOLEAN -- Is proxy supported by resource? -- (from DATA_RESOURCE) is_proxy_used: BOOLEAN -- Is a proxy used? -- (from NETWORK_RESOURCE) is_readable: BOOLEAN -- Is it possible to open in read mode currently? -- (from NETWORK_RESOURCE) ensure -- from DATA_RESOURCE mode_unchanged: mode = old mode is_signal: BOOLEAN -- Is last exception originally due to an external -- event (operating system signal)? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class is_system_exception: BOOLEAN -- Is last exception originally due to an -- external event (operating system error)? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class Is_writable: BOOLEAN = False -- Is it possible to open in write mode currently? (Answer: no) -- (HTTP resources are read-only.) meaning (except: INTEGER_32): detachable STRING_8 -- A message in English describing what except is -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_class_name: detachable STRING_8 -- Name of the class that includes the recipient -- of original form of last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_exception: INTEGER_32 -- Original code of last exception that triggered -- current exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_recipient_name: detachable STRING_8 -- Name of the routine whose execution was -- interrupted by original form of last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_tag_name: detachable STRING_8 -- Assertion tag for original form of last -- assertion violation. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class read_mode: BOOLEAN -- Is read mode set? recipient_name: detachable STRING_8 -- Name of the routine whose execution was -- interrupted by last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class same_type (other: ANY): BOOLEAN -- Is type of current object identical to type of other? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY definition: Result = (conforms_to (other) and other.conforms_to (Current)) Supports_multiple_transactions: BOOLEAN = False -- Does resource support multiple tranactions per connection? -- (Answer: no) tag_name: detachable STRING_8 -- Tag of last violated assertion clause -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class transfer_initiated: BOOLEAN -- Has transfer being initiated. -- (from DATA_RESOURCE) valid_mode (n: INTEGER_32): BOOLEAN -- Is mode n valid? Write_mode: BOOLEAN = False -- Is write mode set? (Answer: no) feature -- Status setting catch (code: INTEGER_32) -- Make sure that any exception of code code will be -- caught. This is the default. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class close -- Close. require -- from DATA_RESOURCE open: is_open ensure -- from DATA_RESOURCE closed: not is_open mode_unchanged: mode = old mode no_packet_available: not (has_packet and is_packet_pending) die (code: INTEGER_32) -- Terminate execution with exit status code, -- without triggering an exception. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS False instance_free: class ignore (code: INTEGER_32) -- Make sure that any exception of code code will be -- ignored. This is not the default. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class initiate_transfer -- Initiate transfer. require -- from DATA_RESOURCE no_error_occurred: not error mode_set: is_mode_set open: is_open not_initiated: not transfer_initiated ensure -- from DATA_RESOURCE failure_means_error: not transfer_initiated implies error message_on_failure -- Print an exception history table -- in case of failure. -- This is the default. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class no_message_on_failure -- Do not print an exception history table -- in case of failure. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class open -- Open resource. require -- from DATA_RESOURCE no_error_occurred: not error mode_set: is_mode_set ensure -- from DATA_RESOURCE no_packet_available: not (has_packet and is_packet_pending) initiated_flag_reset: not transfer_initiated failure_means_error: not is_open implies error raise (name: detachable READABLE_STRING_GENERAL) -- Raise a developer exception of name name. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class raise_retrieval_exception (name: detachable READABLE_STRING_GENERAL) -- Raise a retrieval exception of name name. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class reset_error -- Reset error. -- (from DATA_RESOURCE) ensure -- from DATA_RESOURCE error_reset: not error reset_proxy -- Reset proxy information. -- (from DATA_RESOURCE) ensure -- from DATA_RESOURCE proxy_reset: not address.is_proxy_used reuse_connection (other: NETWORK_RESOURCE) -- Reuse connection of other. -- (from NETWORK_RESOURCE) require -- from DATA_RESOURCE other_exists: other /= Void same_type: same_type (other) supports_multiple_transactions: Supports_multiple_transactions and other.supports_multiple_transactions other_opened: other.is_open set_connect_timeout (n: like connect_timeout) -- Set connection timeout to n. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE non_negative: n >= 0 ensure -- from DATA_RESOURCE connect_timeout_set: connect_timeout = n set_password (pw: STRING_8) -- Set password to pw. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE password_accepted: address.is_password_accepted non_empty_password: pw /= Void and then not pw.is_empty set_port (port_no: INTEGER_32) -- Set port number to port_no. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE closed: not is_open non_negative_port_number: port_no >= 0 ensure -- from DATA_RESOURCE port_set: port = port_no set_proxy (host: STRING_8; port_no: INTEGER_32) -- Set proxy host to host and port to port_no. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE proxy_supported: is_proxy_supported closed: not is_open non_empty_host: host /= Void and then not host.is_empty host_ok: address.proxy_host_ok (host) non_negative_port: port_no >= 0 ensure -- from DATA_RESOURCE proxy_set: address.is_proxy_used set_proxy_information (pi: PROXY_INFORMATION) -- Set proxy information to pi. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE proxy_supported: is_proxy_supported ensure -- from DATA_RESOURCE proxy_set: address.is_proxy_used set_read_buffer_size (n: INTEGER_32) -- Set size of read buffer. -- (from NETWORK_RESOURCE) require -- from DATA_RESOURCE size_positive: n > 0 ensure -- from DATA_RESOURCE buffer_size_set: read_buffer_size = n set_read_mode -- Set read mode. ensure -- from DATA_RESOURCE read_mode_set: read_mode set_timeout (n: like timeout) -- Set timeout to n seconds. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE non_negative: n >= 0 ensure -- from DATA_RESOURCE timeout_set: timeout_ns = {SOCKET_TIMEOUT_UTILITIES}.seconds_to_nanoseconds (n) set_timeout_ns (a_timeout_nanoseconds: NATURAL_64) -- Set timeout with to a_timeout_nanoseconds nanoseconds. -- Warning: the timeout granularity of the platform may not be nanoseconds, but micro or milliseconds. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE is_valid_timeout_ns: {SOCKET_TIMEOUT_UTILITIES}.is_valid_timeout_ns (a_timeout_nanoseconds) ensure -- from DATA_RESOURCE timeout_ns_set: timeout_ns = a_timeout_nanoseconds set_username (un: STRING_8) -- Set username to un. -- (from DATA_RESOURCE) require -- from DATA_RESOURCE username_accepted: address.has_username non_empty_username: un /= Void and then not un.is_empty set_write_mode -- Set write mode. ensure -- from DATA_RESOURCE write_mode_set: Write_mode feature -- Removal dispose -- Clean up resource. -- (from DATA_RESOURCE) feature -- Duplication copy (other: HTTP_PROTOCOL) -- Update current object using fields of object attached -- to other, so as to yield equal objects. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_equal: Current ~ other frozen deep_copy (other: HTTP_PROTOCOL) -- Effect equivalent to that of: -- copy (other . deep_twin) -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY deep_equal: deep_equal (Current, other) frozen deep_twin: HTTP_PROTOCOL -- New object structure recursively duplicated from Current. -- (from ANY) ensure -- from ANY deep_twin_not_void: Result /= Void deep_equal: deep_equal (Current, Result) frozen standard_copy (other: HTTP_PROTOCOL) -- Copy every field of other onto corresponding field -- of current object. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_standard_equal: standard_is_equal (other) frozen standard_twin: HTTP_PROTOCOL -- New object field-by-field identical to other. -- Always uses default copying semantics. -- (from ANY) ensure -- from ANY standard_twin_not_void: Result /= Void equal: standard_equal (Result, Current) frozen twin: HTTP_PROTOCOL -- New object equal to Current -- twin calls copy; to change copying/twinning semantics, redefine copy. -- (from ANY) ensure -- from ANY twin_not_void: Result /= Void is_equal: Result ~ Current feature -- Basic operations frozen default: detachable HTTP_PROTOCOL -- Default value of object's type -- (from ANY) frozen default_pointer: POINTER -- Default value of type POINTER -- (Avoid the need to write p.default for -- some p of type POINTER.) -- (from ANY) ensure -- from ANY instance_free: class default_rescue -- Process exception for routines with no Rescue clause. -- (Default: do nothing.) -- (from ANY) frozen do_nothing -- Execute a null action. -- (from ANY) ensure -- from ANY instance_free: class feature -- Access: timeout connect_timeout: INTEGER_32 -- The connect timeout in milliseconds -- (from DATA_RESOURCE) timeout_ns: NATURAL_64 -- Duration of timeout in nanoseconds. -- (from DATA_RESOURCE) feature -- Constants Read_only: INTEGER_32 = 1 -- (from NETWORK_RESOURCE) Write_only: INTEGER_32 = 2 -- Constants determining the transfer direction for check_socket -- (from NETWORK_RESOURCE) feature -- Input read -- Read packet. -- (from NETWORK_RESOURCE) require -- from DATA_RESOURCE no_error_occurred: not error open: is_open transfer_initated: transfer_initiated readable: is_readable positive_read_buffer_size: read_buffer_size > 0 packet_pending: is_packet_pending ensure -- from DATA_RESOURCE packet_received: is_packet_pending implies last_packet_size > 0 counter_correct: not error implies bytes_transferred = old bytes_transferred + last_packet_size feature -- Output Io: STD_FILES -- Handle to standard file setup -- (from ANY) ensure -- from ANY instance_free: class io_not_void: Result /= Void out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY out_not_void: Result /= Void print (o: detachable ANY) -- Write terse external representation of o -- on standard output. -- (from ANY) ensure -- from ANY instance_free: class put (other: DATA_RESOURCE) -- Write out resource other. -- (from NETWORK_RESOURCE) require -- from DATA_RESOURCE no_error_occurred: not (error and other.error) other_resource_exists: other /= Void resources_open: is_open and other.is_open writable: Is_writable transfer_initated: transfer_initiated frozen tagged_out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY tagged_out_not_void: Result /= Void feature -- Platform Operating_environment: OPERATING_ENVIRONMENT -- Objects available from the operating system -- (from ANY) ensure -- from ANY instance_free: class operating_environment_not_void: Result /= Void invariant headers_list_exists: headers /= Void count_constraint: (is_count_valid and count > 0) implies (is_packet_pending = (bytes_transferred < count)) -- from DATA_RESOURCE address_assigned: address /= Void packet_constraint: not (has_packet xor last_packet /= Void) pending_constraint: is_packet_pending implies (is_open and is_readable and transfer_initiated) error_definition: error = (error_code /= 0) valid_count_constraint: count > 0 implies is_count_valid mode_constraint: is_mode_set = read_mode xor Write_mode -- from ANY reflexive_equality: standard_is_equal (Current) reflexive_conformance: conforms_to (Current) note copyright: "Copyright (c) 1984-2020, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class HTTP_PROTOCOL
Classes Clusters Cluster hierarchy Chart Relations Flat contracts Go to:

-- Generated by Eiffel Studio --
For more details: eiffel.org