[comment {-*- tcl -*- doctools manpage}] [manpage_begin transfer::receiver n 0.1] [copyright {2006 Andreas Kupries }] [moddesc {Data transfer facilities}] [titledesc {Data source}] [require Tcl 8.4] [require snit [opt 1.0]] [require transfer::data::destination [opt 0.1]] [require transfer::connect [opt 0.1]] [require transfer::receiver [opt 0.1]] [description] [keywords transfer copy channel {data destination} receiver] [para] This package pulls data destinations and connection setup together into a combined object for the reception of information coming in over a socket. These objects understand all the options from objects created by the packages [package transfer::data::destination] and [package transfer::connect]. [section API] [list_begin definitions] [call [cmd transfer::receiver] \ [arg object] \ [opt [arg options]...]] This command creates and configures a new receiver [arg object]. The fully qualified name of the object command is returned as the result of the command. [nl] See the packages [package transfer::data::destination] and [package transfer::connect] for the main options recognized. Here we describe only the options which go beyond the referenced set. [list_begin opt] [opt_def -command [arg cmdprefix]] This option specifies the command to invoke when the transmission of the information in the data source has been completed. The arguments given to this command are the same as given to the completion callback of method [cmd receive], see package [package transfer::data::destination]. [list_end] [call [arg object] [method destroy]] This method destroys the object. Doing so while a reception is on progress will cause errors later on, when the reception completes and tries to access the now missing data structures of the destroyed object. [call [arg object] [method start]] This method initiates the data reception, setting up the connection first and then copying the received information into the destination. The method will throw an error if a reception is already/still in progress. I.e. it is not possible to run two receptions in parallel, only in sequence. Errors will also be thrown if the configuration of the data destination is invalid, or if no completion callback was specified. The result returned by the method the same as the result of method [method connect], see package [package transfer::connect]. [call [arg object] [method busy]] This method returns a boolean value telling us whether a reception is in progress ([const True]), or not ([const False]). [list_end] [manpage_end]