.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.0102 (Pod::Simple 3.45) .\" .\" 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 .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . 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 .\" ======================================================================== .\" .IX Title "IKC::Specifier 3" .TH IKC::Specifier 3 2024-09-01 "perl v5.40.0" "User Contributed Perl Documentation" .\" 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 POE::Component::IKC::Specifier \- IKC event specifer .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 4 \& use POE; \& use POE::Component::IKC::Specifier; \& $state=specifier_parse(\*(Aqpoe://*/timeserver/connect\*(Aq); \& print \*(AqThe foreign state is \*(Aq.specifier_name($state); .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" This is a helper module that encapsulates POE IKC specifiers. An IKC specifier is a way of designating either a kernel, a session or a state within a IKC cluster. .PP IKC specifiers have the folloing format : .PP .Vb 1 \& poe:://kernel/session/state .Ve .PP \&\fBkernel\fR may a kernel name, a kernel ID, blank (for local kernel), a \&'*' (all known foreign kernels) or host:port (not currently supported). .PP \&\fBsession\fR may be any session alias that has been published by the foreign kernel. .PP \&\fBstate\fR is a state that has been published by a foreign session. .PP Examples : .ie n .IP """poe://Pulse/timeserver/connect""" 4 .el .IP \f(CWpoe://Pulse/timeserver/connect\fR 4 .IX Item "poe://Pulse/timeserver/connect" State 'connect' in session 'timeserver' on kernel 'Pulse'. .ie n .IP """poe:/timeserver/connect""" 4 .el .IP \f(CWpoe:/timeserver/connect\fR 4 .IX Item "poe:/timeserver/connect" State 'connect' in session 'timeserver' on the local kernel. .ie n .IP """poe://*/timeserver/connect""" 4 .el .IP \f(CWpoe://*/timeserver/connect\fR 4 .IX Item "poe://*/timeserver/connect" State 'connect' in session 'timeserver' on any known foreign kernel. .ie n .IP """poe://Billy/bob/""" 4 .el .IP \f(CWpoe://Billy/bob/\fR 4 .IX Item "poe://Billy/bob/" Session 'bob' on foreign kernel 'Billy'. .SH "EXPORTED FUNCTIONS" .IX Header "EXPORTED FUNCTIONS" .ie n .SS specifier_parse($spec) .el .SS \f(CWspecifier_parse($spec)\fP .IX Subsection "specifier_parse($spec)" Turn a specifier into the internal representation (hash ref). Returns \&\fBundef()\fR if the specifier wasn't valid. .PP .Vb 1 \& print Dumper specifer_parse(\*(Aqpoe://Pulse/timeserver/time\*(Aq); .Ve .PP would print .PP .Vb 5 \& $VAR1 = { \& kernel => \*(AqPulse\*(Aq, \& session => \*(Aqtimeserver\*(Aq, \& state => \*(Aqtime\*(Aq, \& }; .Ve .PP \&\fBNote\fR : the internal representation might very well change some day. .ie n .SS specifier_name($spec) .el .SS \f(CWspecifier_name($spec)\fP .IX Subsection "specifier_name($spec)" Turns a specifier into a string. .SH BUGS .IX Header "BUGS" .SH AUTHOR .IX Header "AUTHOR" Philip Gwyn, .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright 1999\-2014 by Philip Gwyn. All rights reserved. .PP This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. .PP See .SH "SEE ALSO" .IX Header "SEE ALSO" POE, POE::Component::IKC::Responder