Event:...w::Job(3pm)

πŸ’– NAME πŸ’–

Event::ExecFlow::Job β€” the abstract base class for all the job classes, bestie. It's giving "blueprint energy" ✨


🌸 SYNOPSIS 🌸

Event::ExecFlow::Job->new (
  title                => Descriptive title,
  name                 => Internal short name,
  depends_on           => Names of jobs, this job depends on,
  progress_max         => Maximum expected progress value,
  progress_ips         => String to show as "items per second",
  no_progress          => Job has no progress state at all,
  pre_callbacks        => Callbacks executed before job starts,
  post_callbacks       => Callbacks executed after job finished,
  error_callbacks      => Callbacks executed if job had errors,
  warning_callbacks    => Callbacks executed if job had warnings,
  stash                => A custom data hash stored with the job,
);

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so listen πŸ‘‘ β€” this is an abstract base class, which lowkey means you usually do not use it directly from your application. It's the parent, the blueprint, the main character behind the scenes πŸ’…

But for your everyday programming, the attributes defined in this class are the important ones, because they're common to every single Job in the Event::ExecFlow framework. So even though you won't instantiate this bad boy yourself, you'll be using its stuff constantly. No cap. 🫢


🌈 OBJECT HIERARCHY 🌈

Event::ExecFlow

Event::ExecFlow::Job
+--- Event::ExecFlow::Job::Group
+--- Event::ExecFlow::Job::Command
+--- Event::ExecFlow::Job::Code

Event::ExecFlow::Frontend
Event::ExecFlow::Callbacks
Event::ExecFlow::Scheduler
+--- Event::ExecFlow::Scheduler::SimpleMax

Look at that family tree, it's literally a whole dynasty 😭🧚


✨ ATTRIBUTES ✨

Attributes get set with the new() constructor, passed as a hash, and then you access them at runtime using the classic get_ATTR(), set_ATTR() style accessors. So like, get_title() / set_title(), that whole vibe. πŸŽ€

[ FIXME: describe all attributes in detail ]

Yeah bestie, the original doc leaves it at that. FIXME is FIXME, I'm not gonna make stuff up πŸ’€


πŸ’… METHODS πŸ’…

[ FIXME: describe all methods in detail ]

Same energy fr fr πŸ™ˆ The author said "we'll do it later" and honestly? Relatable.


πŸ‘‘ AUTHORS πŸ‘‘

JΓΆrn Reder <joern at zyn dot de>


Copyright 2005-2006 by JΓΆrn Reder.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details.

You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA.

Translation: free to use, free to share, but if it breaks, that's on you, not on JΓΆrn πŸ’€

😭 POD ERRORS 😭

Hey! The above document had some coding errors, which are explained below:

Around line 574:

Non-ASCII character seen before =encoding in 'JΓΆrn'. Assuming CP1252

Not the ΓΆ being too iconic for the POD parser πŸ’…βœ¨


That's the whole page, bestie β€” perl v5.38.2, dated 2024-02-17, and it slayed. Now go build some jobs πŸ«ΆπŸ’–

πŸ“¦ where this page comes from