Transm...Torrent(3pm)
π Transm...Torrent(3pm) π
okay so bestie, welcome to the User Contributed Perl Documentation page for this lil' torrent object β¨ it came in under the header Transm...Torrent(3pm) because the title got truncated and honestly? iconic of it. grab a snack, we're going through every single attribute together π«Ά
π NAME π
Transmission::Torrent β a Transmission torrent object π
πΈ DESCRIPTION πΈ
hey so first things first, the original page tells you to go read "3.2 Torrent Mutators" and "3.3 Torrent accessors" over at:
https://trac.transmissionbt.com/browser/trunk/extras/rpc-spec.txt
that's the homework, bestie, go look π
and then, the actual tea: this class handles data related to a torrent known to Transmission π like, all the info about one specific torrent? that's this class's whole job. slay.
π SEE ALSO π
Transmission::AttributeRoleβ go read that one too, it's giving supporting cast π
π ATTRIBUTES π
so the original splits these into two flavours and honestly it's giving setters vs getters. we're keeping that energy, and yes, some names show up in both lists. that's not a typo, that's just how the page is, periodt π
π₯ the ones you can set (mutators) π₯
idβ$id = $self->id;β hands you back the id that identifies this torrent in transmission πbandwidth_priorityβ$self->bandwidth_priority($num);β this torrent's bandwidth β¨download_limitβ$self->download_limit($num);β the maximum download speed, and it's in K/s πdownload_limitedβ$self->download_limited($bool);βTrueif"downloadLimit"is honored π―honors_session_limitsβ$self->honors_session_limits($bool);βTrueif session upload limits are honored πlocationβ$self->location($str);β the new location of the torrent's content πpeer_limitβ$self->peer_limit($num);β maximum number of peers π―seed_ratio_limitβ$self->seed_ratio_limit($num);β session seeding ratio π±seed_ratio_modeβ$self->seed_ratio_mode($num);β which ratio to use. seetr_ratiolimitπupload_limitβ$self->upload_limit($num);β maximum upload speed, also in K/s πupload_limitedβ$self->upload_limited($bool);βTrueif"upload_limit"is honored β
π¦ the ones you just read (accessors) π¦
ngl the original is on a minimalist streak down here β most of these are literally just the signature and nothing else, and we respect the brevity π
activity_dateβ$num = $self->activity_date;added_dateβ$num = $self->added_date;bandwidth_priorityβ$num = $self->bandwidth_priority;(yep, again, she contains multitudes π )commentβ$str = $self->comment;corrupt_everβ$num = $self->corrupt_ever;creatorβ$str = $self->creator;date_createdβ$num = $self->date_created;desired_availableβ$num = $self->desired_available;done_dateβ$num = $self->done_date;download_dirβ$str = $self->download_dir;downloaded_everβ$num = $self->downloaded_ever;downloadersβ$num = $self->downloaders;download_limitβ$num = $self->download_limit;(the getter twin of the setter above π«Ά)download_limitedβ$bool = $self->download_limited;errorβ$num = $self->error;error_stringβ$str = $self->error_string;etaβ$num = $self->eta;hash_strβ$str = $self->hash_string;β οΈ heads up, the attribute is calledhash_strbut the call ishash_string. that's exactly what the original says, no cap, don't come for me πhave_uncheckedβ$num = $self->have_unchecked;have_validβ$num = $self->have_valid;honors_session_limitsβ$bool = $self->honors_session_limits;is_privateβ$bool = $self->is_private;π€«leechersβ$num = $self->leechers;left_until_doneβ$num = $self->left_until_done;manual_announce_timeβ$num = $self->manual_announce_time;max_connected_peersβ$num = $self->max_connected_peers;nameβ$str = $self->name;peerβ$num = $self->peer;peers_connectedβ$num = $self->peers_connected;peers_getting_from_usβ$num = $self->peers_getting_from_us;peers_knownβ$num = $self->peers_known;peers_sending_to_usβ$num = $self->peers_sending_to_us;percent_doneβ$num = $self->percent_done;πpiecesβ$str = $self->pieces;piece_countβ$num = $self->piece_count;piece_sizeβ$num = $self->piece_size;rate_downloadβ$num = $self->rate_download;rate_uploadβ$num = $self->rate_upload;recheck_progressβ$num = $self->recheck_progress;seedersβ$num = $self->seeders;seed_ratio_limitβ$num = $self->seed_ratio_limit;seed_ratio_modeβ$num = $self->seed_ratio_mode;size_when_doneβ$num = $self->size_when_done;start_dateβ$num = $self->start_date;statusβ$str = $self->status;swarm_speedβ$num = $self->swarm_speed;times_completedβ$num = $self->times_completed;total_sizeβ$num = $self->total_size;torrent_fileβ$str = $self->torrent_file;uploaded_everβ$num = $self->uploaded_ever;upload_limitβ$num = $self->upload_limit;upload_limitedβ$bool = $self->upload_limited;upload_ratioβ$num = $self->upload_ratio;webseeds_sending_to_usβ$num = $self->webseeds_sending_to_us;filesβ this one's got two things going on, and it's giving overachiever:
$array_ref = $self->files;
$self->clear_files;
β files returns an array of Transmission::Torrent::Files ποΈ (and clear_files is hanging out right under it, yes, we keep it, no we don't delete it)
π οΈ METHODS π οΈ
BUILDARGSβ$hash_ref = $self->BUILDARGS(\%args);β converts the keys in%argsfrom"CamelCase"to"camel_case"πͺβ‘οΈπreadβ$bool = $self->read('id', 'name', 'eta');this method will refresh all the requested attributes in one single RPC request. meanwhile if you call one and one attribute, you get one-and-one request. so like, batch them, bestie, your network will thank you π‘read_allβ$bool = $self->read_all;β similar to"read", but it requests all the attributes. going feral, love that for her π₯startβ seeTransmission::Client::start(). βΆοΈstopβ seeTransmission::Client::stop(). βΉοΈverifyβ seeTransmission::Client::verify(). πmoveβ$bool = $self->move($path);β will move the torrent content to$pathπ¦β‘οΈπwrite_wantedβ$bool = $self->write_wanted;β will write"wanted"information from"files"to transmission βοΈwrite_priorityβ$bool = $self->write_priority;β will write"priorty"information from"files"to transmission. and yes, it says"priorty"in the original, that is not me misspelling it, I am simply built different and I keep the facts exact π
π LICENSE π
bestie. there is literally nothing under this heading in the original. empty. void. mysterious main character energy π we simply do not know, and I refuse to make something up.
βοΈ AUTHOR βοΈ
see Transmission::Client.
and that's the whole thing, you ate it π this page is perl v5.36.0, dated 2022-10-16, and it lives in the User Contributed Perl Documentation β so if you enjoyed it, go read Transmission::Client and Transmission::AttributeRole next, they're the rest of the friend group πβπ
π¦ where this page comes from
- ubuntu noble: libtransmission-client-perl 0.0806-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libtransmission-client-perl 0.0806-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libtransmission-client-perl 0.0806-2 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms