Package de.xima.fc.update.updates.pre8
Class ThemeToFormVersionUpdate
java.lang.Object
de.xima.fc.update.updates.pre8.ThemeToFormVersionUpdate
- All Implemented Interfaces:
IOrderable
,ISystemUpdate
,Comparable<IOrderable>
A new column was added to the FormVersion entity:
FormVersion.getTheme()
. Up until version 5, the theme
reference was stored directly inside the persist JSON. Starting with version 6, the theme reference receives its own
database column, which makes it easier and faster to read the theme, as it does not require accessing the persist
JSON file data and parsing the JSON. This update iterates over each form version without a theme (database column
theme
set to null
), attempts to parse the persist JSON and retrieve the theme, and updates the db
column theme
.- Author:
- XIMA MEDIA GmbH
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
exec()
Executes the system updategetDescription
(Locale loc) Gets an Description of the update which should be shown in the ui.getUUID()
Gets an String for identifying an update.boolean
Checks if an update needs to run at all.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface de.xima.fc.listener.IOrderable
compareTo, shouldBeAfter
-
Constructor Details
-
ThemeToFormVersionUpdate
public ThemeToFormVersionUpdate()
-
-
Method Details
-
getUUID
Description copied from interface:ISystemUpdate
Gets an String for identifying an update. This String should not be longer than 36 chars and should not be changed, otherwise the update may run multiple times!- Specified by:
getUUID
in interfaceISystemUpdate
- Returns:
String
UUID of the update
-
getDescription
Description copied from interface:ISystemUpdate
Gets an Description of the update which should be shown in the ui. The description will also be stored in the database with an max of 1020 chars and the localeCmnConst.DFLT_LOCALE
- Specified by:
getDescription
in interfaceISystemUpdate
- Parameters:
loc
-Locale
the current ui locale- Returns:
String
-
needsToRun
public boolean needsToRun()Description copied from interface:ISystemUpdate
Checks if an update needs to run at all. If not, the update will be marked as run and never performed at all.- Specified by:
needsToRun
in interfaceISystemUpdate
- Returns:
Boolean
if the update is needed
-
exec
public void exec()Description copied from interface:ISystemUpdate
Executes the system update- Specified by:
exec
in interfaceISystemUpdate
-