Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Motivation

In DAM/UI ist es möglich Dateien hochzuladen. Wenn zu viele/zu große Dateien hochgeladen werden, ist es möglich, dass der Nutzer während dem Upload Vorgang ausgeloggt wird, da das Framework Sessions nur für eine bestimmte Zeit ohne Interaktion am Leben hält. Die Dateien, die nun im Nirvana herumschwirren können nicht weiter bearbeitet werden. So kann es vorkommen, dass Nutzer Uploads wieder und wieder ausführen müssen, bis ihre Dateien in einem Durchlauf hochgeladen wurden.

Die DAM Upload Prozesse sind dazu da, diese abgebrochenen Vorgänge zu einem späteren Zeitpunkt fortsetzen zu können.

Aufbau

Die Funktionalität wird durch eine neue Tabelle gesteuert. Mit jedem Uploadformular in DAM UI wird ein DamUploadProcess Datensatz erzeugt. Dieser Datensatz enthält fast alle relevanten Daten, die ein Upload in DAM benötigt, um ausgeführt zu werden. Dieser Datensazt dient dazu, die Anzahl an Parametern zu reduzieren, die über HTTP-Anfragen an den Server übermittelt werden. Durch diesen Datensatz ist es auch nicht möglich, einen Upload mit bereits existierenden Dateien/IDs durchzuführen und so Fehler oder ungewollte Verhaltensweisen zu verursachen. Wird ein Upload nicht vollständig durchgeführt, so kann der Upload an einem anderen Zeitpunkt fortgesetzt werden, da alle nötigen Daten in der Datenbank persistiert werden.

Property

Bezeichnung

Beschreibung

fileIDs

Datei IDs

Array. In diesem Feld werden die IDs der in diesem Prozess hochgeladen Dateien gespeichert.Enthält ein Prozess keine fileIDs, so kann er nicht fortgesetzt werden.

targetFolderID

ID des Zielordners

Ganzzahl. Die ID des Zielordners wird in diesem Feld hinterlegt.

uniqueIdentifier

Identifikator

Zeichenkette. Diese Identifikation wird im Konstruktor der Entität erstellt. Sie wird genutzt um die Dateien in einem entsprechenden Temp-Verzeichnis abzulegen, sodass Dopplungen möglichst vermieden werden.

eventParams

Event Parameter

Array. In diesem Array werden jegliche HTTP-Parameter abgelegt, die in das Upload Formular eingereicht werden, damit diese im Weiteren verarbeitet werden können.

Ein Beispiel hierfür ist die ID einer Kategorie, wenn eine Datei in einer Kategorie hochgeladen werden soll. Diese Datei wird im Anschluss zur Kategorie verknüpft.


Image RemovedImage Added

Konfiguration

Die Funktion ist ohne Konfiguration einsatzbereit. In der Tabelle "damUiConfig" wurde jedoch ein Feld hinzugefügt, mit dem man die Lebenszeit dieser Prozessdatensätze defininieren kann. Der Standardwert liegt bei 24 (Stunden).

Garbage Collection

Wird ein Upload Vorgang durch die entsprechenden UI-Elemente abgebrochen (z.B. "Abbrechen" Button), so wird der Datensatz gelöscht. Das Löschen triggert ein Event woraufhin ein Listener in DAM/UI die nötigen Schritte einleitet, um die mit dem Prozess-Datensatz in Verbindungstehenden Daten/Dateien zu löschen.

Diese Löschlogik wird auch ausgelöst, wenn ein Prozess-Datensatz über brandbox gelöscht wird (entityAbstract::delete).

Darüber hinaus existiert auch eine Garbage Collection, welche die Datensätze anhand der konfigurierten Lebenszeit löscht.

Uploadprozesse fortsetzen

Hat man einen Uploadprozess nicht bis zum Ende durchgeführt, ist es dem Nutzer über zwei Wege möglich, diesen Uploadprozess fortzusetzen.

Dashboard

Nicht abgeschlossene Uploadprozesse eines Nutzers werden dem Nutzer auf dem Willkommens-Dashboard in einer eigenen Kachel angezeigt.

  1. Navigieren Sie in den "Home"-Tab.

  2. Sollte der derzeit angemeldete Nutzer über nicht abgeschlossene Uploadprozesse verfügen, erscheint die Kachel "Upload fortsetzen", welche diese Prozesse auflistet.

  3. Klicken Sie auf den Button "Upload fortsetzen" um den Upload fortzusetzen.

Tabelle

Uploadprozess-Datensätze sind über die Tabelle "Uploadprozesse" einsehbar. Rechte- und Rollen müssen entsprechend konfiguriert sein.

Image Modified