.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Sympa::Request 3Sympa" .TH Sympa::Request 3Sympa "2022-11-25" "6.2.70" "sympa 6.2.70" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Sympa::Request \- Requests for operation .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 3 \& use Sympa::Request; \& my $request = Sympa::Request\->new($serialized, context => $list); \& my $request = Sympa::Request\->new(context => $list, action => \*(Aqlast\*(Aq); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Sympa::Request implements serializable object representing requests by users. .SS "Methods" .IX Subsection "Methods" .ie n .IP "new ( [ $serialized, ] context => $that, action => $action, key => value, ... ] )" 4 .el .IP "new ( [ \f(CW$serialized\fR, ] context => \f(CW$that\fR, action => \f(CW$action\fR, key => value, ... ] )" 4 .IX Item "new ( [ $serialized, ] context => $that, action => $action, key => value, ... ] )" \&\fIConstructor\fR. Creates a new Sympa::Request object. .Sp Parameters: .RS 4 .ie n .IP "$serialized" 4 .el .IP "\f(CW$serialized\fR" 4 .IX Item "$serialized" Serialized request. .IP "context => object" 4 .IX Item "context => object" Context. Sympa::List object, Robot or \f(CW\*(Aq*\*(Aq\fR. .ie n .IP "action => $action" 4 .el .IP "action => \f(CW$action\fR" 4 .IX Item "action => $action" Name of requested action. .IP "key => value, ..." 4 .IX Item "key => value, ..." Metadata and attributes. .RE .RS 4 .Sp Returns: .Sp A new instance of Sympa::Request, or \fIundef\fR, if something went wrong. .RE .IP "new_from_tuples ( key => value, ... )" 4 .IX Item "new_from_tuples ( key => value, ... )" \&\fIConstructor\fR. \&\s-1OBSOLETED.\s0 Creates Sympa::Request object from paired options. .IP "dup ( )" 4 .IX Item "dup ( )" \&\fICopy constructor\fR. Gets deep copy of instance. .IP "to_string ( )" 4 .IX Item "to_string ( )" \&\fISerializer\fR. Returns serialized data of object. .IP "cmd_line ( [ canonic => 1 ] )" 4 .IX Item "cmd_line ( [ canonic => 1 ] )" \&\fIInstance method\fR. \&\s-1TBD.\s0 .IP "handler ( )" 4 .IX Item "handler ( )" \&\fIInstance method\fR. Name of a subclass of Sympa::Request::Handler to process request. .IP "get_id ( )" 4 .IX Item "get_id ( )" \&\fIInstance method\fR. Gets unique identifier of instance. .SS "Context and metadata" .IX Subsection "Context and metadata" Context and metadata given to constructor are accessible as hash elements of object. They are given by request spool. See \*(L"Context and metadata\*(R" in Sympa::Spool::Auth for details. .SS "Attributes" .IX Subsection "Attributes" These are accessible as hash elements of objects. There are attributes including: .IP "{custom_attribute}" 4 .IX Item "{custom_attribute}" Custom attribute connected to requested action. .IP "{gecos}" 4 .IX Item "{gecos}" Display name of user sending request. .IP "{sender}" 4 .IX Item "{sender}" E\-mail of user who sent the request. .SS "Serialization" .IX Subsection "Serialization" Sympa::Request object includes number of slots as hash items: \&\fBmetadata\fR, \fBcontext\fR and \fBattributes\fR. Metadata including context are given by spool: See \*(L"Marshaling and unmarshaling metadata\*(R" in Sympa::Spool. .PP Logically, objects are stored into physical spool as \fBserialized form\fR and deserialized when they are fetched from spool. Attributes are encoded in \f(CW\*(C`X\-Sympa\-*:\*(C'\fR pseudo-header fields. .PP See also \*(L"Serialization\*(R" in Sympa::Message for example. .SH "SEE ALSO" .IX Header "SEE ALSO" Sympa::Request::Collection, Sympa::Request::Handler, Sympa::Request::Message, Sympa::Spool::Auth. .SH "HISTORY" .IX Header "HISTORY" Sympa::Request appeared on Sympa 6.2.10.