+
Point of view
All features
deferred class TCP_PROTOCOL
Summary
A protocol that handles a TCP stream.
Direct parents
Inherit list: PROTOCOL
Insert list: NETWORK_RESOURCE_VALIDITY
Known children
Inherit list: HTTP_PROTOCOL
Class invariant
Overview
Features
{ANY}
{URL}
{}
{ANY}
{URL}
{RECYCLING_POOL}
  • recycle
    Do whatever needs to be done to free resources or recycle other objects when recycling this one
{}
  • dispose
    Action to be executed just before garbage collection reclaims an object.
{}
{}
error: STRING
writable attribute
{ANY}
valid_uri (a_uri: STRING): BOOLEAN
effective function
{ANY}
sync: BOOLEAN
writable attribute
{ANY}
set_sync (a_sync: BOOLEAN) assign sync
effective procedure
{ANY}
ensure
standard_port: INTEGER_32
deferred function
{ANY}
connect_to (url: URL, read: BOOLEAN, write: BOOLEAN)
effective procedure
{URL}
require
  • url.uri /= Void
  • not is_connected
  • read or write
locator (a_uri: STRING): NETWORK_RESOURCE_LOCATOR
effective function
{URL}
PROTOCOL is a factory of RESOURCE_LOCATOR
require
  • valid_uri(a_uri)
ensure
  • Result.uri.is_equal(a_uri)
recycle_locator (a_locator: RESOURCE_LOCATOR)
effective procedure
{URL}
require
  • a_locator /= Void
tcp_connect_to (ios: SOCKET_INPUT_OUTPUT_STREAM, url: URL, read: BOOLEAN, write: BOOLEAN)
deferred procedure
{}
require
once function
{}
deferred function
{ANY}
is_connected: BOOLEAN
deferred function
{ANY}
disconnect
deferred procedure
{URL}
require ensure
input: INPUT_STREAM
deferred function
{URL}
require
output: OUTPUT_STREAM
deferred function
{URL}
require
recycle
effective procedure
Do whatever needs to be done to free resources or recycle other objects when recycling this one
dispose
effective procedure
{}
Action to be executed just before garbage collection reclaims an object.
is_relative_uri (a_uri: STRING): BOOLEAN
effective function
{}
is_absolute_uri (a_uri: STRING): BOOLEAN
effective function
{}
True if a_uri contains a correctly formatted network URI (i.e. everything except the protocol scheme)
require
  • not a_uri.is_empty
once function
{}