    deferred class
    	DATA_RESOURCE

    General
    	cluster: transfer
    	description: "Data resources"

    Ancestors
    	DATA_RESOURCE_ERROR_CONSTANTS
    	HASHABLE*

    Queries
    	address: URL
    	address_exists: BOOLEAN
    	bytes_transferred: INTEGER_32
    	count: INTEGER_32
    	error: BOOLEAN
    	error_code: INTEGER_32
    	error_text (code: INTEGER_32): STRING_8
    	has_packet: BOOLEAN
    	hash_code: INTEGER_32
    	is_count_valid: BOOLEAN
    	is_equal (other: [like Current] DATA_RESOURCE): BOOLEAN
    	is_hashable: BOOLEAN
    	is_mode_set: BOOLEAN
    	is_open: BOOLEAN
    	is_packet_pending: BOOLEAN
    	is_proxy_supported: BOOLEAN
    	is_proxy_used: BOOLEAN
    	is_readable: BOOLEAN
    	is_writable: BOOLEAN
    	last_packet: STRING_8
    	last_packet_size: INTEGER_32
    	location: STRING_8
    	mode: INTEGER_32
    	port: INTEGER_32
    	proxy_host: STRING_8
    	proxy_port: INTEGER_32
    	read_buffer_size: INTEGER_32
    	read_mode: BOOLEAN
    	service: STRING_8
    	supports_multiple_transactions: BOOLEAN
    	timeout: INTEGER_32
    	transfer_initiated: BOOLEAN
    	valid_mode (n: INTEGER_32): BOOLEAN
    	write_mode: BOOLEAN

    Commands
    	close
    	dispose
    	initiate_transfer
    	open
    	put (other: DATA_RESOURCE)
    	read
    	reset_error
    	reset_proxy
    	reuse_connection (other: DATA_RESOURCE)
    	set_password (pw: STRING_8)
    	set_port (port_no: INTEGER_32)
    	set_proxy (host: STRING_8; port_no: INTEGER_32)
    	set_proxy_information (pi: PROXY_INFORMATION)
    	set_read_buffer_size (n: INTEGER_32)
    	set_read_mode
    	set_timeout (n: INTEGER_32)
    	set_username (un: STRING_8)
    	set_write_mode

    Constraints
    	address assigned
    	timeout non negative
    	packet constraint
    	pending constraint
    	error definition
    	valid count constraint
    	mode constraint