indexing
description: "Mailer object used to send or retrieve resources"
author: "david s"
date: "$Date$"
revision: "$Revision$"
class interface
MAILER
create
feature
from_resource: EMAIL_RESOURCE
to_resource: EMAIL_RESOURCE
feature
error: BOOLEAN
transfer_error: TRANSFER_ERROR
feature
transfer
require
resources_exists: from_resource /= void and then to_resource /= void
valid_transfer: (from_resource.can_be_sent and then to_resource.can_send) or (from_resource.can_receive and then to_resource.can_be_received)
feature
set_from_resource (resource: EMAIL_RESOURCE)
require
resource_exists: resource /= void
valid_from_resource: resource.can_be_sent or resource.can_receive
set_to_resource (resource: EMAIL_RESOURCE)
require
resource_exists: resource /= void
valid_to_resource: resource.can_send or resource.can_be_received
invariant
ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)
end -- MAILER