replaceText [sv]

Andre språk: replaceText (svensk)

Script

Datasett
Sist lagret
04.06.2018 10:30:24
Kode
replaceText
Navn
replaceText
Svensk

Kildekode
var result = false; var String = Java.type("java.lang.String"); var StringBuilder = Java.type("java.lang.StringBuilder"); var System = Java.type("java.lang.System"); var Schema = Java.type("se.altrusoft.entitymachine.schema.Schema"); var PropertyType = Java.type("se.altrusoft.entitymachine.schema.PropertyType"); var Entity = Java.type("se.altrusoft.entitymachine.entity.Entity"); var schema = Schema.getInstance(); var replaceIn = params.get("property")[0]; var toReplace = params.get("replace")[0]; var replaceWith = params.get("with")[0]; function replaceString(propertyValue, toReplace, replaceWith) { switch (propertyValue.getValueType()) { case PropertyType.ValueType.STRING: case PropertyType.ValueType.URL: var original = propertyValue.getValue(); var replaced = original.replace(toReplace, replaceWith); if (!replaced.equals(original)) { propertyValue.setValue(replaced); result = true; } break; case PropertyType.ValueType.TEXT: var texts = propertyValue.getValue(); var textIter = texts.entrySet().iterator(); while (textIter.hasNext()) { var textEntry = textIter.next(); var original = textEntry.getValue(); var replaced = original.replace(toReplace, replaceWith); if (!replaced.equals(original)) { texts.put(textEntry.getKey(), replaced); result = true; } } break; default: break; } } function doReplace(anEntity) { var propIter = anEntity.getProperties().entrySet().iterator(); while (propIter.hasNext()) { var entry = propIter.next(); var propertyTypeName = entry.getKey(); logger.info("Property: " + propertyTypeName); if (propertyTypeName.equals(replaceIn)) { var valueIter = entry.getValue().iterator(); while (valueIter.hasNext()) { replaceString(valueIter.next(), toReplace, replaceWith); } } else { var propertyType = schema.propertyType(propertyTypeName); if (propertyType != null && propertyType.getValueType().equals( PropertyType.ValueType.ENTITY)) { var valueIter = entry.getValue().iterator(); while (valueIter.hasNext()) { var value = valueIter.next().getValue(); if (value.getClass().equals(Entity.class)) { doReplace(value); } } } } } } doReplace(entity); result;
Uuid
0072fb12-72b8-4ac4-b681-385e52dec7d4
ACL (rettigheter)
SYSTEM
Opprettet av
root
Opprettet
04.06.2018 10:30:24
Sist lagret av

Sist lagret

Tidligere lagret
Erstatt Lagret Lagret av