twisted.words.protocols.irc.DccFileReceive(DccFileReceiveBasic)
class documentationtwisted.words.protocols.irc
View Source
(View In Hierarchy)
Higher-level coverage for getting a file from DCC SEND.
I allow you to change the file's name and destination directory. I won't overwrite an existing file unless I've been told it's okay to do so. If passed the resumeOffset keyword argument I will attempt to resume the file from that amount of bytes.
XXX: I need to let the client know when I am finished. XXX: I need to decide how to keep a progress indicator updated. XXX: Client needs a way to tell me "Do not finish until I say so." XXX: I need to make sure the client understands if the file cannot be written.
Instance Variable | filename | The name of the file to get. (type: bytes ) |
Instance Variable | fileSize | The size of the file to get, which has a default value of -1
if the size of the file was not specified in the DCC SEND request. (type: int ) |
Instance Variable | destDir | The destination directory for the file to be received. (type: bytes ) |
Instance Variable | overwrite | An integer representing whether an existing file should be overwritten or
not. This initially is an int
but can be modified to be a bool
using the set_overwrite
method. (type: int
or bool ) |
Instance Variable | queryData | queryData is a 3-tuple of (user, channel, data). (type: tuple ) |
Instance Variable | fromUser | This is the hostmask of the requesting user and is found at index 0 of queryData . (type: bytes ) |
Method | __init__ | |
Method | set_directory | Set the directory where the downloaded file will be placed. |
Method | set_filename | Change the name of the file being transferred. |
Method | set_overwrite | May I overwrite existing files? |
Method | connectionMade | Called when a connection is made. |
Method | dataReceived | See: protocol.Protocol.dataReceived |
Method | connectionLost | When the connection is lost, I close the file. |
Method | __str__ | Undocumented |
Method | __repr__ | Undocumented |
Inherited from DccFileReceiveBasic:
Instance Variable | bytesReceived | An integer representing the number of bytes of data received. (type: int ) |
Inherited from Protocol (via DccFileReceiveBasic):
Method | logPrefix | Return a prefix matching the class name, to identify log messages related to this protocol instance. |
Inherited from BaseProtocol (via DccFileReceiveBasic, Protocol):
Method | makeConnection | Make a connection to a transport and a server. |
Inherited from Ephemeral (via DccFileReceiveBasic):
Method | __reduce__ | Serialize any subclass of Ephemeral
in a way which replaces it with Ephemeral
itself. |
Method | __getstate__ | Undocumented |
Method | __setstate__ | Undocumented |
-1
if the size of the file was not specified in the DCC SEND request. (type: int
)
int
but can be modified to be a bool
using the set_overwrite
method. (type: int
or bool
)
Parameters | resumeOffset | An integer representing the amount of bytes from where the transfer of data
should be resumed. (type: int ) |
Set the directory where the downloaded file will be placed.
May raise OSError if the supplied directory path is not suitable.
Parameters | directory | The directory where the file to be received will be placed. (type: bytes ) |
Change the name of the file being transferred.
This replaces the file name provided by the sender.
Parameters | filename | The new name for the file. (type: bytes ) |
May I overwrite existing files?
Parameters | boolean | A boolean value representing whether existing files should be overwritten
or not. (type: bool ) |
Called when a connection is made.
This may be considered the initializer of the protocol, because it is called when the connection is completed. For clients, this is called once the connection to the server has been established; for servers, this is called after an accept() call stops blocking and a socket has been received. If you need to send any greeting or initial message, do it here.
See: protocol.Protocol.dataReceived
Warning: This just acknowledges to the remote host that the data has been received; it doesn't do anything with the data, so you'll want to override this.