public class ProcessCopyUtil extends Object
Vorgang clonedVorg = CopyHelper.clone(origVorg); // ...ggfs an Vorgangskopie noch andere Attribute setzen/überschreiben... // Vorgangskopie persistieren: DaoProvider.VORGANG_DAO.create(entityCtx, origVorg.getProjekt().getMandant(), clonedVorg); // nach der Persistierung hat die Vorgangskopie eine gültige Entitäts-ID und es kann weiter gehen: CopyHelper.setProzessUid(origVorg, clonedVorg); CopyHelper.copyAttachments(origVorg, clonedVorg);
Constructor and Description |
---|
ProcessCopyUtil() |
Modifier and Type | Method and Description |
---|---|
static Vorgang |
clone(IEntityContext ec,
Vorgang origVorgang)
Erstellt eine Kopie des aktuellen (übergebenen) Vorgangs mit folgenden Anpassungen:
Vorgang.id ist 0
Vorgang.gelesen ist false
Vorgang.inArbeit ist false
Vorgang.prozessId ist "" (Leer-String)
Die Attachment -Instanzen in der originalen Vorgang.attachments -Liste werden über eine
NEUE Liste referenziert, alle anderen nicht-primitiven Attributereferenzen werden 'flach' kopiert (Verweis auf
dieselbe Instanz). |
static void |
cloneSubmitsAndAttachToProcess(IEntityContext ec,
Vorgang originalV,
Vorgang clonedV)
Diese Methode dient dazu die Formeingänge eines Vorgangs zu klonen und diese einem neuen Vorgang hinzuzufügen.
|
static Vorgang |
copy(IEntityContext ec,
Vorgang origin,
Vorgang clone) |
static void |
copyAttachments(IEntityContext ec,
Vorgang originalVorgang,
Vorgang clonedVorgang)
Kopiert alle zum
originalVorgang gehörenden Dateien in das entsprechende Verzeichnis der
Vorgangskopie. |
static void |
setProcessUUID(Vorgang origVorgang,
Vorgang clonedVorgang)
Setzt eine Prozess-UID für
clonedVorgang , die dem Muster CLONED_VORGANG_UID_TMPL entspricht. |
public static Vorgang copy(IEntityContext ec, Vorgang origin, Vorgang clone) throws IOException, IllegalAccessException, InstantiationException, InvocationTargetException, NoSuchMethodException
public static Vorgang clone(IEntityContext ec, Vorgang origVorgang) throws Exception
Vorgang.id
ist 0Vorgang.gelesen
ist false
Vorgang.inArbeit
ist false
Vorgang.prozessId
ist "" (Leer-String)Attachment
-Instanzen in der originalen Vorgang.attachments
-Liste werden über eine
NEUE Liste referenziert, alle anderen nicht-primitiven Attributereferenzen werden 'flach' kopiert (Verweis auf
dieselbe Instanz).Exception
public static void cloneSubmitsAndAttachToProcess(IEntityContext ec, Vorgang originalV, Vorgang clonedV) throws IllegalAccessException, InstantiationException, InvocationTargetException, NoSuchMethodException
originalV
- der originale Vorgang
clonedV
- der neue, geklonte Vorgang
IllegalAccessException
InstantiationException
InvocationTargetException
NoSuchMethodException
public static void setProcessUUID(Vorgang origVorgang, Vorgang clonedVorgang)
clonedVorgang
, die dem Muster CLONED_VORGANG_UID_TMPL
entspricht.origVorgang
- - OriginalvorgangclonedVorgang
- - Vorgangskopiepublic static void copyAttachments(IEntityContext ec, Vorgang originalVorgang, Vorgang clonedVorgang) throws IOException
originalVorgang
gehörenden Dateien in das entsprechende Verzeichnis der
Vorgangskopie.originalVorgang
- - OriginalvorgangclonedVorgang
- - VorgangskopieIOException
- bei I/O-ProblemenCopyright © 2019 XIMA MEDIA GmbH. All rights reserved.