use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class StringComplexFieldActions method concatenate.
@AtlasFieldActionInfo(name = "Concatenate", sourceType = FieldType.ANY, targetType = FieldType.STRING, sourceCollectionType = CollectionType.ALL, targetCollectionType = CollectionType.NONE)
public static String concatenate(Action action, Object input) {
if (action == null || !(action instanceof Concatenate)) {
throw new IllegalArgumentException("Action must be a Concatenate action");
}
if (input == null) {
return null;
}
Concatenate concat = (Concatenate) action;
String delim = concat.getDelimiter() == null ? "" : concat.getDelimiter();
Collection<?> inputs = collection(input);
StringBuilder builder = new StringBuilder();
for (Object entry : inputs) {
if (builder.length() > 0) {
builder.append(delim);
}
if (entry != null) {
builder.append(entry.toString());
}
}
return builder.toString();
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DefaultAtlasFieldActionsServiceTest method testProcessActionWithActionActionDetailObject.
@Test
public void testProcessActionWithActionActionDetailObject() throws AtlasException {
ActionDetail actionDetail = null;
Object sourceObject = "String";
Action action = new Trim();
assertEquals(sourceObject, fieldActionsService.processAction(action, actionDetail, sourceObject));
action = new GenerateUUID();
actionDetail = new ActionDetail();
actionDetail.setClassName("io.atlasmap.actions.StringComplexFieldActions");
actionDetail.setSourceType(FieldType.ANY);
actionDetail.setMethod("genareteUUID");
assertNotNull(fieldActionsService.processAction(action, actionDetail, sourceObject));
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DefaultAtlasFieldActionsServiceTest method testListActionDetails.
@Test
public void testListActionDetails() {
assertNotNull(fieldActionsService);
List<ActionDetail> actionDetails = fieldActionsService.listActionDetails();
for (ActionDetail d : actionDetails) {
if (d.getParameters() != null) {
System.out.println("Action: " + d.getName());
for (Property prop : d.getParameters().getProperty()) {
System.out.println("\t param: " + prop.getName());
System.out.println("\t type: " + prop.getFieldType().value());
}
}
}
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DateFieldActionsTest method testAddSeconds.
@Test
public void testAddSeconds() {
AddSeconds action = new AddSeconds();
action.setSeconds(2);
assertNull(DateFieldActions.addSeconds(action, null));
ZonedDateTime origDate = ZonedDateTime.now();
ZonedDateTime laterDate = origDate.plusSeconds(2);
assertEquals(laterDate, DateFieldActions.addSeconds(action, origDate));
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DateFieldActionsTest method testAddDays.
@Test
public void testAddDays() {
AddDays action = new AddDays();
action.setDays(2);
assertNull(DateFieldActions.addDays(action, null));
ZonedDateTime origDate = ZonedDateTime.now();
ZonedDateTime laterDate = origDate.plusDays(2);
assertEquals(laterDate, DateFieldActions.addDays(action, origDate));
}
Aggregations