Search in sources :

Example 6 with Action

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();
}
Also used : Concatenate(io.atlasmap.v2.Concatenate) SubString(io.atlasmap.v2.SubString) AtlasFieldActionInfo(io.atlasmap.spi.AtlasFieldActionInfo)

Example 7 with Action

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));
}
Also used : Action(io.atlasmap.v2.Action) ActionDetail(io.atlasmap.v2.ActionDetail) Trim(io.atlasmap.v2.Trim) GenerateUUID(io.atlasmap.v2.GenerateUUID) Test(org.junit.Test)

Example 8 with Action

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());
            }
        }
    }
}
Also used : ActionDetail(io.atlasmap.v2.ActionDetail) Property(io.atlasmap.v2.Property) Test(org.junit.Test)

Example 9 with Action

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));
}
Also used : AddSeconds(io.atlasmap.v2.AddSeconds) ZonedDateTime(java.time.ZonedDateTime) Test(org.junit.Test)

Example 10 with Action

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));
}
Also used : AddDays(io.atlasmap.v2.AddDays) ZonedDateTime(java.time.ZonedDateTime) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)28 AtlasFieldActionInfo (io.atlasmap.spi.AtlasFieldActionInfo)13 Action (io.atlasmap.v2.Action)6 ActionDetail (io.atlasmap.v2.ActionDetail)6 SubString (io.atlasmap.v2.SubString)6 ConvertMassUnit (io.atlasmap.v2.ConvertMassUnit)5 Action (com.opensymphony.xwork2.Action)3 AtlasFieldAction (io.atlasmap.api.AtlasFieldAction)3 AtlasMapping (io.atlasmap.v2.AtlasMapping)3 HashMap (java.util.HashMap)3 LinkedHashMap (java.util.LinkedHashMap)3 AbsoluteValue (io.atlasmap.v2.AbsoluteValue)2 Actions (io.atlasmap.v2.Actions)2 Append (io.atlasmap.v2.Append)2 Concatenate (io.atlasmap.v2.Concatenate)2 ConvertAreaUnit (io.atlasmap.v2.ConvertAreaUnit)2 ConvertDistanceUnit (io.atlasmap.v2.ConvertDistanceUnit)2 ConvertVolumeUnit (io.atlasmap.v2.ConvertVolumeUnit)2 DataSource (io.atlasmap.v2.DataSource)2 LastIndexOf (io.atlasmap.v2.LastIndexOf)2