Job

Mit der Klasse addon_job kann ein Hintergrundprozess definiert werden. Der Fortschritt kann über eine Progress-Bar angezeigt werden.

done

Syntax

void done()

Beschreibung Markiert den Prozess als Erledigt. Damit wird die Progress-Bar beendet.

Beispiel


is_cancelled

Syntax

boolean is_cancelled()

Beschreibung Liefert true, wenn der Prozess durch den Benutzer abgebrochen wurde.

Beispiel


$this->set_text('global_invoices');
$all_invoices = $this->api_invoices->searchInvoices(array(
		'changed_since' => $this->start,
		'changed_until' => $this->end,
		'flow_status_after' => 2,
		'flow_status_before' => 5
));

$this->set_count(count($all_invoices));
foreach ($all_invoices as $invoice) {
	if ($this->is_cancelled()) return new addon_response(false);
	$this->set_item($invoice['name']);
}

set_count

Syntax

void set_count(int $count)

Beschreibung Methode zum Setzen der Gesamtzahl der Prozess-Schritte.

Beispiel


$this->set_text('global_invoices');
$all_invoices = $this->api_invoices->searchInvoices(array(
		'changed_since' => $this->start,
		'changed_until' => $this->end,
		'flow_status_after' => 2,
		'flow_status_before' => 5
));

$this->set_count(count($all_invoices));
foreach ($all_invoices as $invoice) {
	if ($this->is_cancelled()) return new addon_response(false);
	$this->set_item($invoice['name']);
}

set_current

Syntax

void set_current(int $current)

Beschreibung Setzt den aktuellen Prozess-Schritt. Damit wird die Fortschrittsanzeige entsprechend gesetzt.

Beispiel


set_item

Syntax

void set_item(string $item)

Beschreibung Setzt die Anzeige der Progress-Bar auf das Element $item. Damit wird die Fortschrittsanzeige um einen Wert weiter gestellt.

Beispiel


$this->set_text('global_invoices');
$all_invoices = $this->api_invoices->searchInvoices(array(
		'changed_since' => $this->start,
		'changed_until' => $this->end,
		'flow_status_after' => 2,
		'flow_status_before' => 5
));

$this->set_count(count($all_invoices));
foreach ($all_invoices as $invoice) {
	if ($this->is_cancelled()) return new addon_response(false);
	$this->set_item($invoice['name']);
}

set_plus

Syntax

void set_plus(int $plus)

Beschreibung Setzt die Fortschrittsanzeige um $plus Werte nach vorn.

Beispiel


set_start

Syntax

void set_start(int $start)

Beschreibung Setzt den Startwert der Fortschrittsanzeige.

Beispiel


set_text

Syntax

void set_text(string $text)

Beschreibung Setzt den Text, der auf der Progress-Bar angezeigt wird.

Beispiel


perform

Syntax

addon_response perform()

Beschreibung Methode, die als Hintergrund-Prozess ausgeführt wird.

Beispiel


namespace addon;

final class bg_job extends addon_job
{
   public function perform()
   {
       $this->set_text('global_invoices');
       $all_invoices = $this->api_invoices->searchInvoices(array(
           'changed_since' => $this->start,
           'changed_until' => $this->end,
           'flow_status_after' => 2,
           'flow_status_before' => 5
       ));
       $this->set_count(count($all_invoices));
       foreach ($all_invoices as $invoice) {
           if ($this->is_cancelled()) return new addon_response(false);
           $this->set_item($invoice['name']);
           sleep(1);
       }
   }

}