Sympa::Request(3Sympa)

πŸ’– Sympa::Request πŸ’–

ok so bestie, welcome to Sympa::Request from the sympa manual, section 3. it's literally the whole vibe of "requests for operation" and i'm obsessed πŸŽ€


✨ NAME ✨

Sympa::Request β€” Requests for operation πŸ’…


🌸 SYNOPSIS 🌸

use Sympa::Request;
my $request = Sympa::Request->new($serialized, context => $list);
my $request = Sympa::Request->new(context => $list, action => 'last');

like. look at her. two whole ways to make a request object and she's thriving πŸ¦‹


πŸ‘‘ DESCRIPTION πŸ‘‘

Sympa::Request implements a serializable object representing requests by users. that's the whole assignment and she ATE πŸ”₯

🧚 Methods

new ( [ $serialized, ] context => $that, action => $action, key => value, ... ] )

Constructor bestie!! 🫢 makes you a brand new Sympa::Request object, no cap.

Parameters:

  • $serialized β€” the serialized request, yeah that one.
  • context => object β€” the context, girlie. can be a Sympa::List object, a Robot, or '*'.
  • action => $action β€” the name of the requested action, periodt.
  • key => value, ... β€” metadata and attributes. all of them. bring snacks.

Returns:

a new instance of Sympa::Request πŸ’–, or undef if something went wrong 😭 (it happens, we don't talk about it).

new_from_tuples ( key => value, ... )

Constructor. ⚠️ OBSOLETED. ⚠️ creates a Sympa::Request object from paired options. she's retired, respect her legacy though πŸ™ˆ

dup ( )

Copy constructor πŸ’… gets you a deep copy of the instance. not a shallow one. a DEEP one. we love a thorough queen.

to_string ( )

Serializer ✨ returns the serialized data of the object. that's it, that's the job.

cmd_line ( [ canonic => 1 ] )

Instance method. TBD. (the devs said "we'll get to it" and honestly? same.)

handler ( )

Instance method πŸŽ€ the name of a subclass of Sympa::Request::Handler that processes the request.

get_id ( )

Instance method πŸ’œ gets the unique identifier of the instance. her little name tag. iconic.

🌈 Context and metadata

so the context and metadata you hand to the constructor are accessible as hash elements of the object. they're given by the request spool. for the deets, go look at "Context and metadata" in Sympa::Spool::Auth β€” she has the full breakdown, iykyk.

πŸ’œ Attributes

these are accessible as hash elements of objects, and there are attributes including:

  • {custom_attribute} β€” custom attribute connected to the requested action 🌸
  • {gecos} β€” display name of the user sending the request ✨
  • {sender} β€” e-mail of the user who sent the request πŸ“§

πŸ¦‹ Serialization

a Sympa::Request object includes a number of slots as hash items: metadata, context and attributes. metadata including context is given by the spool β€” check "Marshaling and unmarshaling metadata" in Sympa::Spool for the tea.

logically, objects are stored into a physical spool as serialized form, and deserialized when they get fetched from the spool πŸŽ€. attributes are encoded in X-Sympa-*: pseudo-header fields. yes, the weird header thing. it's giving mysterious.

also see "Serialization" in Sympa::Message for an example, bestie πŸ’…


πŸ‘€ SEE ALSO πŸ‘€

  • Sympa::Request::Collection
  • Sympa::Request::Handler
  • Sympa::Request::Message
  • Sympa::Spool::Auth

πŸ“œ HISTORY πŸ“œ

Sympa::Request appeared on Sympa 6.2.10. a legend from day one 🫢


ok that's the whole page, you're welcome πŸ’– this was Sympa::Request(3Sympa) from the sympa 6.2.80 manual, dated 2026-10-19. go forth and serialize responsibly, bestie πŸŒˆβ­πŸ’…

πŸ“¦ where this page comes from