Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

Version 1 Nächste Version anzeigen »

Version

v5.5.2

Datum

 

Bundlebundle/dam
Packagedam/ui
ErstellerStefan Hof
Tester

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.

PropertyBezeichnungBeschreibung
fileIDsDatei IDsArray. 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.
targetFolderIDID des ZielordnersGanzzahl. Die ID des Zielordners wird in diesem Feld hinterlegt.
uniqueIdentifierIdentifikatorZeichenkette. 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.
eventParamsEvent 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.


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.

  • Keine Stichwörter