TRANSFER Programming Manual
Defining Package Formats and Protocol
Developing TRANSFER Applications
8–8 40970 Tandem Computers Incorporated
Defining Package
Formats
and Protocol
To move items from one depot to another, your application must bind the items into
packages. Each package includes a package header item, zero or more component
items, zero or more item data records, and a list of recipients.
The package header item specifies:
The network-unique item ID of the package
The name of the correspondent sending the package
Timestamps to indicate when the package was sent, when it should be delivered,
what the time zone difference is between the sending node and the receiving node,
and when the package should expire
Other package delivery parameters, such as delivery priority and agent selection
criteria
During package delivery, a copy of the package goes to every node where a recipient
for that package has a depot.
The term recipient list should not be confused with distribution list.
A recipient list contains the names of correspondents and distribution lists that are
to receive the package. The list is an attribute of the package and applies only to
the package for which the recipient list is created. The list, which has no name of
its own, ceases to exist when the package is deleted.
A distribution list is a predefined list of recipient names; the list provides a simple
method for a correspondent to send a package to multiple destinations.
A member of a distribution list can be a correspondent or another distribution list.
The distribution list belongs to the depot owner and exists independently of any
packages.
Initially, the recipient list for a package has one entry for each name supplied by the
application. As names are resolved and distribution lists expanded, new names are
added to the list and control information is updated.
After a package is created, only a process that represents the creator of that package
can change its contents. After the package is sent, the application process cannot alter
its contents. After the package is sent, local names on the recipient list are validated,
local distribution lists are expanded into member names, and duplicate names are
eliminated. This process is repeated until all local names are resolved or found to be in
error.
For local recipients, the TRANSFER delivery system delivers the package by placing
an entry in the INBOX folder of each recipient and notifying any appropriate agents.
For remote recipients, the TRANSFER delivery system moves a copy of the package to
the appropriate remote nodes, and name resolution takes place again at those nodes.
The TRANSFER delivery system ensures that a package is never moved to a node
more than once. Even if a distribution list at a remote node adds new recipients
located at the local node, the TRANSFER delivery system provides delivery to the new
local recipients by using the copy of the package that already exists at the local node.