String prop_doctype = cp.getParamString("validate.metadata(" + i + ")[@docstruct]");
String prop_startswith = cp.getParamString("validate.metadata(" + i + ")[@startswith]");
String prop_endswith = cp.getParamString("validate.metadata(" + i + ")[@endswith]");
String prop_createElementFrom = cp.getParamString("validate.metadata(" + i + ")[@createelementfrom]");
DocStruct myStruct = inStruct;
MetadataType mdt = null;
try {
mdt = this.ughhelp.getMetadataType(inPrefs, prop_metadatatype);
} catch (UghHelperException e) {
Helper.setFehlerMeldung("[" + this.myProzess.getTitel() + "] " + "Metadatatype does not exist: ", prop_metadatatype);
}
/*
* wenn das Metadatum des FirstChilds überprüfen werden soll, dann dieses jetzt (sofern vorhanden) übernehmen
*/
if (prop_doctype != null && prop_doctype.equals("firstchild")) {
if (myStruct.getAllChildren() != null && myStruct.getAllChildren().size() > 0) {
myStruct = myStruct.getAllChildren().get(0);
} else {
continue;
}
}
/*
* wenn der MetadatenTyp existiert, dann jetzt die nötige Aktion überprüfen
*/
if (mdt != null) {
/* ein CreatorsAllOrigin soll erzeugt werden */
if (prop_createElementFrom != null) {
ArrayList<MetadataType> listOfFromMdts = new ArrayList<MetadataType>();
StringTokenizer tokenizer = new StringTokenizer(prop_createElementFrom, "|");
while (tokenizer.hasMoreTokens()) {
String tok = tokenizer.nextToken();
try {
MetadataType emdete = this.ughhelp.getMetadataType(inPrefs, tok);
listOfFromMdts.add(emdete);
} catch (UghHelperException e) {
/*
* wenn die zusammenzustellenden Personen für CreatorsAllOrigin als Metadatatyp nicht existieren, Exception abfangen und
* nicht weiter drauf eingehen