POE::C...Factory(3pm)

πŸ“¦
version 3.00 Β· 3 versions
, in debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

✨ NAME ✨

POE::Component::Jabber::ProtocolFactory β€” it's a protected helper class that handles all the different protocols, bestie πŸ’…


🌸 SYNOPSIS 🌸

PCJ::ProtocolFactory is a protected helper class and its whole job is instantiating specific Protocols based on the constants that get exported. That's it, that's the gig πŸŽ€


πŸ¦‹ DESCRIPTION πŸ¦‹

okay so here's the tea β˜• β€” internally, PCJ uses PCJ::ProtocolFactory to turn that ConnectionType argument into a Protocol object, and that object is what implements all the various supported dialects. slay

and that is literally why the accepted arguments get exported as constants when you use it. no cap. 🫢


πŸ”₯ FUNCTIONS πŸ”₯

by default, nothing gets exported beyond the accepted arguments. there's exactly one package function available:

πŸ’– get_guts [Protected]

get_guts takes a single argument, and that argument is a defined constant exported by this module. it hands you back a PCJ::Protocol object. periodt. πŸ‘‘

peep PCJ::Protocol for the details on its methods and on implementing different Protocols πŸ“–


πŸ‘‘ CONSTANTS πŸ‘‘

here are the constants that get exported. their names are kinda self-explanatory, ngl:

  • XMPP
  • LEGACY
  • JABBERD14_COMPONENT
  • JABBERD20_COMPONENT

πŸ’€ NOTES πŸ’€

all supported Protocol types are implemented right here in this file. and just so you know β€” get_guts will confess if it receives an invalid argument 😭 so don't come at it with nonsense.


🌈 AUTHOR 🌈

(c) Copyright 2007-2009 Nicholas Perez. Released under the GPL. πŸ“œ


and that's the whole page, bestie πŸŽ€ this was written for perl v5.36.0, dated 2023-08-26 β€” and it's from POE::C...Factory(3pm) (the manual name, in case you were wondering). ily, go read PCJ::Protocol next πŸ’œ