Example usage for org.apache.commons.collections4 MapUtils isEmpty

List of usage examples for org.apache.commons.collections4 MapUtils isEmpty

Introduction

In this page you can find the example usage for org.apache.commons.collections4 MapUtils isEmpty.

Prototype

public static boolean isEmpty(final Map<?, ?> map) 

Source Link

Document

Null-safe check if the specified map is empty.

Usage

From source file:org.openecomp.sdc.vendorsoftwareproduct.services.CompositionDataExtractor.java

private static List<Network> extractNetworks(ServiceTemplate serviceTemplate,
        ToscaServiceModel toscaServiceModel) {
    List<Network> networks = new ArrayList<>();
    Map<String, NodeTemplate> networkNodeTemplates = toscaAnalyzerService
            .getNodeTemplatesByType(serviceTemplate, ToscaNodeType.NETWORK.getDisplayName(), toscaServiceModel);
    if (MapUtils.isEmpty(networkNodeTemplates)) {
        return networks;
    }/*  w ww. java  2  s. co  m*/
    for (String networkId : networkNodeTemplates.keySet()) {
        Network network = new Network();
        network.setName(networkId);
        Optional<Boolean> networkDhcpValue = getNetworkDhcpValue(serviceTemplate,
                networkNodeTemplates.get(networkId));
        network.setDhcp(networkDhcpValue.isPresent() ? networkDhcpValue.get() : true);
        networks.add(network);
    }

    return networks;
}

From source file:org.openecomp.sdc.vendorsoftwareproduct.upload.validation.UploadFileValidationTest.java

@Test(dependsOnMethods = "testUploadVariousZips")
public void testUploadNoErrorVariousZips() {

    File[] files = getFileList("/validation/zips/various/noError");
    InputStream is;/*from  ww w.ja v  a  2 s. c o  m*/
    for (File file : files) {
        if (file.isFile()) {
            try {
                is = new FileInputStream(file);
                UploadFileResponse response = vendorSoftwareProductManager.uploadFile(vspId, is, USER1);
                Map<String, List<ErrorMessage>> errors = response.getErrors();
                Assert.assertTrue(MapUtils.isEmpty(MessageContainerUtil
                        .getMessageByLevel(org.openecomp.sdc.datatypes.error.ErrorLevel.ERROR, errors)));

            } catch (FileNotFoundException e) {
                throw new RuntimeException(e);
            } catch (CoreException ce) {
                Assert.fail("failed upload:" + file.getName() + " exception:" + ce.getMessage());

            } catch (RuntimeException re) {
                Assert.fail("failed upload:" + file.getName() + " exception:" + re.getMessage());
            }
        }
    }
}

From source file:org.openecomp.sdcrests.vsp.rest.mapping.MapValidationResponseToDto.java

private static Map<String, List<ErrorMessageDto>> mapUploadDataErrors(
        Map<String, List<ErrorMessage>> uploadDataErrors) {
    if (MapUtils.isEmpty(uploadDataErrors)) {
        return null;
    }/*from  w ww  .j av a  2 s.co  m*/
    return uploadDataErrors.entrySet().stream()
            .collect(Collectors.toMap(entry -> entry.getKey(), entry -> mapErrorMessages(entry.getValue())));
}

From source file:org.openscore.lang.compiler.modeller.ExecutableBuilder.java

public Executable transformToExecutable(ParsedSlang parsedSlang, String execName,
        Map<String, Object> executableRawData) {

    Validate.notEmpty(executableRawData, "Error compiling " + parsedSlang.getName()
            + ". Executable data for: \'" + execName + "\' is empty");
    Validate.notNull(parsedSlang, "Slang source for: \'" + execName + "\' is null");

    Map<String, Serializable> preExecutableActionData = new HashMap<>();
    Map<String, Serializable> postExecutableActionData = new HashMap<>();

    transformersHandler.validateKeyWords(execName, executableRawData,
            ListUtils.union(preExecTransformers, postExecTransformers), execAdditionalKeywords, null);

    preExecutableActionData.putAll(transformersHandler.runTransformers(executableRawData, preExecTransformers));
    postExecutableActionData/*  w ww  .j  ava 2 s .  c  o m*/
            .putAll(transformersHandler.runTransformers(executableRawData, postExecTransformers));

    @SuppressWarnings("unchecked")
    List<Input> inputs = (List<Input>) preExecutableActionData.remove(INPUTS_KEY);
    @SuppressWarnings("unchecked")
    List<Output> outputs = (List<Output>) postExecutableActionData.remove(OUTPUTS_KEY);
    @SuppressWarnings("unchecked")
    List<Result> results = (List<Result>) postExecutableActionData.remove(RESULTS_KEY);

    String namespace = parsedSlang.getNamespace();
    Map<String, String> imports = parsedSlang.getImports();
    Set<String> dependencies;
    switch (parsedSlang.getType()) {
    case FLOW:

        if (!executableRawData.containsKey(WORKFLOW_KEY)) {
            throw new RuntimeException("Error compiling " + parsedSlang.getName() + ". Flow: " + execName
                    + " has no workflow property");
        }
        List<Map<String, Map<String, Object>>> workFlowRawData;
        try {
            workFlowRawData = (List) executableRawData.get(WORKFLOW_KEY);
        } catch (ClassCastException ex) {
            throw new RuntimeException("Flow: '" + execName
                    + "' syntax is illegal.\nBelow 'workflow' property there should be a list of tasks and not a map");
        }
        if (CollectionUtils.isEmpty(workFlowRawData)) {
            throw new RuntimeException("Error compiling " + parsedSlang.getName() + ". Flow: " + execName
                    + " has no workflow data");
        }

        Workflow onFailureWorkFlow = null;
        List<Map<String, Map<String, Object>>> onFailureData;
        Iterator<Map<String, Map<String, Object>>> tasksIterator = workFlowRawData.iterator();
        while (tasksIterator.hasNext()) {
            Map<String, Map<String, Object>> taskData = tasksIterator.next();
            String taskName = taskData.keySet().iterator().next();
            if (taskName.equals(ON_FAILURE_KEY)) {
                try {
                    onFailureData = (List<Map<String, Map<String, Object>>>) taskData.values().iterator()
                            .next();
                } catch (ClassCastException ex) {
                    throw new RuntimeException("Flow: '" + execName
                            + "' syntax is illegal.\nBelow 'on_failure' property there should be a list of tasks and not a map");
                }
                if (CollectionUtils.isNotEmpty(onFailureData)) {
                    onFailureWorkFlow = compileWorkFlow(onFailureData, imports, null, true);
                }
                tasksIterator.remove();
                break;
            }
        }

        Workflow workflow = compileWorkFlow(workFlowRawData, imports, onFailureWorkFlow, false);
        dependencies = fetchDirectTasksDependencies(workflow);
        return new Flow(preExecutableActionData, postExecutableActionData, workflow, namespace, execName,
                inputs, outputs, results, dependencies);

    case OPERATION:
        Map<String, Object> actionRawData;
        try {
            actionRawData = (Map<String, Object>) executableRawData.get(ACTION_KEY);
        } catch (ClassCastException ex) {
            throw new RuntimeException("Operation: '" + execName
                    + "' syntax is illegal.\nBelow 'action' property there should be a map of values such as: 'python_script:' or 'java_action:'");
        }

        if (MapUtils.isEmpty(actionRawData)) {
            throw new RuntimeException("Error compiling " + parsedSlang.getName() + ". Operation: " + execName
                    + " has no action data");
        }
        Action action = compileAction(actionRawData);
        dependencies = new HashSet<>();
        return new Operation(preExecutableActionData, postExecutableActionData, action, namespace, execName,
                inputs, outputs, results, dependencies);
    default:
        throw new RuntimeException(
                "Error compiling " + parsedSlang.getName() + ". It is not of flow or operations type");
    }
}

From source file:org.openscore.lang.compiler.modeller.ExecutableBuilder.java

private Task compileTask(String taskName, Map<String, Object> taskRawData, String defaultSuccess,
        Map<String, String> imports, String defaultFailure) {

    if (MapUtils.isEmpty(taskRawData)) {
        throw new RuntimeException("Task: " + taskName + " has no data");
    }//from   w  w  w .ja  v  a 2  s  .  c o m

    Map<String, Serializable> preTaskData = new HashMap<>();
    Map<String, Serializable> postTaskData = new HashMap<>();

    transformersHandler.validateKeyWords(taskName, taskRawData,
            ListUtils.union(preTaskTransformers, postTaskTransformers), TaskAdditionalKeyWords, null);

    try {
        preTaskData.putAll(transformersHandler.runTransformers(taskRawData, preTaskTransformers));
        postTaskData.putAll(transformersHandler.runTransformers(taskRawData, postTaskTransformers));
    } catch (Exception ex) {
        throw new RuntimeException("For task: " + taskName + " syntax is illegal.\n" + ex.getMessage(), ex);
    }
    List<Input> inputs = (List<Input>) preTaskData.get(DO_KEY);
    @SuppressWarnings("unchecked")
    Map<String, Object> doRawData = (Map<String, Object>) taskRawData.get(DO_KEY);
    if (MapUtils.isEmpty(doRawData)) {
        throw new RuntimeException("Task: \'" + taskName + "\' has no reference information");
    }
    String refString = doRawData.keySet().iterator().next();
    String refId = resolveRefId(refString, imports);

    @SuppressWarnings("unchecked")
    Map<String, String> navigationStrings = (Map<String, String>) postTaskData.get(NAVIGATION_KEY);

    //default navigation
    if (MapUtils.isEmpty(navigationStrings)) {
        navigationStrings = new HashMap<>();
        navigationStrings.put(SUCCESS_RESULT, defaultSuccess);
        navigationStrings.put(FAILURE_RESULT, defaultFailure);
    }

    return new Task(taskName, preTaskData, postTaskData, inputs, navigationStrings, refId);
}

From source file:org.openscore.lang.compiler.modeller.transformers.DoTransformer.java

@Override
public List<Input> transform(Map<String, List> rawData) {
    //todo handle also String type
    List<Input> result = new ArrayList<>();
    if (MapUtils.isEmpty(rawData)) {
        return result;
    }/*from  w w w  .j av  a  2s .  c  o m*/
    Map.Entry<String, List> inputsEntry = rawData.entrySet().iterator().next();
    if (inputsEntry.getValue() == null) {
        return result;
    }
    for (Object rawInput : inputsEntry.getValue()) {
        Input input = transformSingleInput(rawInput);
        result.add(input);
    }
    return result;
}

From source file:org.openscore.lang.compiler.modeller.transformers.NavigateTransformer.java

@Override
public Map<String, String> transform(Map<String, Object> rawData) {
    if (MapUtils.isEmpty(rawData)) {
        return new LinkedHashMap<>();
    }/* w  ww  .j av a2s.  com*/
    Map<String, String> navigationData = new HashMap<>();
    for (Map.Entry<String, Object> entry : rawData.entrySet()) {
        //todo currently we support only string navigation (no nested navigation)
        // - SUCCESS: some_task
        // the value of the navigation is the step to go to
        if (entry.getValue() instanceof String) {
            navigationData.put(entry.getKey(), (String) entry.getValue());
        }
    }

    return navigationData;
}

From source file:org.openscore.lang.compiler.utils.ExecutableBuilder.java

public Executable transformToExecutable(ParsedSlang parsedSlang, String execName,
        Map<String, Object> executableRawData) {

    Validate.notEmpty(executableRawData,
            "Error compiling " + parsedSlang.getName() + ". Executable data for: " + execName + " is empty");
    Validate.notNull(parsedSlang, "Slang source for " + execName + " is null");

    Map<String, Serializable> preExecutableActionData = new HashMap<>();
    Map<String, Serializable> postExecutableActionData = new HashMap<>();

    transformersHandler.validateKeyWords(execName, executableRawData,
            ListUtils.union(preExecTransformers, postExecTransformers), execAdditionalKeywords);

    preExecutableActionData.putAll(transformersHandler.runTransformers(executableRawData, preExecTransformers));
    postExecutableActionData/*from   ww  w  .  j  a  va 2s .c  om*/
            .putAll(transformersHandler.runTransformers(executableRawData, postExecTransformers));

    @SuppressWarnings("unchecked")
    List<Input> inputs = (List<Input>) preExecutableActionData.remove(SlangTextualKeys.INPUTS_KEY);
    @SuppressWarnings("unchecked")
    List<Output> outputs = (List<Output>) postExecutableActionData.remove(SlangTextualKeys.OUTPUTS_KEY);
    @SuppressWarnings("unchecked")
    List<Result> results = (List<Result>) postExecutableActionData.remove(SlangTextualKeys.RESULTS_KEY);

    String namespace = parsedSlang.getNamespace();
    Map<String, String> imports = parsedSlang.getImports();
    resolveSystemProperties(inputs, imports);
    Map<String, SlangFileType> dependencies;
    switch (parsedSlang.getType()) {
    case FLOW:

        if (!executableRawData.containsKey(SlangTextualKeys.WORKFLOW_KEY)) {
            throw new RuntimeException("Error compiling " + parsedSlang.getName() + ". Flow: " + execName
                    + " has no workflow property");
        }
        LinkedHashMap<String, Map<String, Object>> workFlowRawData;
        try {
            workFlowRawData = (LinkedHashMap) executableRawData.get(SlangTextualKeys.WORKFLOW_KEY);
        } catch (ClassCastException ex) {
            throw new RuntimeException("Flow: '" + execName
                    + "' syntax is illegal.\nBelow 'workflow' property there should be a map of tasks and not a list");
        }
        if (MapUtils.isEmpty(workFlowRawData)) {
            throw new RuntimeException("Error compiling " + parsedSlang.getName() + ". Flow: " + execName
                    + " has no workflow data");
        }

        Workflow onFailureWorkFlow = null;
        LinkedHashMap<String, Map<String, Object>> onFailureData;
        try {
            onFailureData = (LinkedHashMap) workFlowRawData.remove(SlangTextualKeys.ON_FAILURE_KEY);
        } catch (ClassCastException ex) {
            throw new RuntimeException("Flow: '" + execName
                    + "' syntax is illegal.\nBelow 'on_failure' property there should be a map of tasks and not a list");
        }
        if (MapUtils.isNotEmpty(onFailureData)) {
            onFailureWorkFlow = compileWorkFlow(onFailureData, imports, null, true);
        }

        Workflow workflow = compileWorkFlow(workFlowRawData, imports, onFailureWorkFlow, false);
        //todo: add system properties dependencies?
        dependencies = fetchDirectTasksDependencies(workflow);
        return new Flow(preExecutableActionData, postExecutableActionData, workflow, namespace, execName,
                inputs, outputs, results, dependencies);

    case OPERATIONS:
        Map<String, Object> actionRawData;
        try {
            actionRawData = (Map<String, Object>) executableRawData.get(SlangTextualKeys.ACTION_KEY);
        } catch (ClassCastException ex) {
            throw new RuntimeException("Operation: '" + execName
                    + "' syntax is illegal.\nBelow 'action' property there should be a map of values such as: 'python_script:' or 'java_action:'");
        }

        if (MapUtils.isEmpty(actionRawData)) {
            throw new RuntimeException("Error compiling " + parsedSlang.getName() + ". Operation: " + execName
                    + " has no action data");
        }
        Action action = compileAction(actionRawData);
        //todo: add system properties dependencies?
        dependencies = new HashMap<>();
        return new Operation(preExecutableActionData, postExecutableActionData, action, namespace, execName,
                inputs, outputs, results, dependencies);
    default:
        throw new RuntimeException(
                "Error compiling " + parsedSlang.getName() + ". It is not of flow or operations type");
    }
}

From source file:org.openscore.lang.compiler.utils.ExecutableBuilder.java

private Task compileTask(String taskName, Map<String, Object> taskRawData, String defaultSuccess,
        Map<String, String> imports, String defaultFailure) {

    if (MapUtils.isEmpty(taskRawData)) {
        throw new RuntimeException("Task: " + taskName + " has no data");
    }/*from w ww  .  j a  v a 2 s .co  m*/

    Map<String, Serializable> preTaskData = new HashMap<>();
    Map<String, Serializable> postTaskData = new HashMap<>();

    transformersHandler.validateKeyWords(taskName, taskRawData,
            ListUtils.union(preTaskTransformers, postTaskTransformers), TaskAdditionalKeyWords);

    try {
        preTaskData.putAll(transformersHandler.runTransformers(taskRawData, preTaskTransformers));
        postTaskData.putAll(transformersHandler.runTransformers(taskRawData, postTaskTransformers));
    } catch (Exception ex) {
        throw new RuntimeException("For task: " + taskName + " syntax is illegal.\n" + ex.getMessage(), ex);
    }
    List<Input> inputs = (List<Input>) preTaskData.get(SlangTextualKeys.DO_KEY);
    resolveSystemProperties(inputs, imports);
    @SuppressWarnings("unchecked")
    Map<String, Object> doRawData = (Map<String, Object>) taskRawData.get(SlangTextualKeys.DO_KEY);
    if (MapUtils.isEmpty(doRawData)) {
        throw new RuntimeException("Task: " + taskName + " has no reference information");
    }
    String refString = doRawData.keySet().iterator().next();
    String refId = resolveRefId(refString, imports);

    @SuppressWarnings("unchecked")
    Map<String, String> navigationStrings = (Map<String, String>) postTaskData
            .get(SlangTextualKeys.NAVIGATION_KEY);

    //default navigation
    if (MapUtils.isEmpty(navigationStrings)) {
        navigationStrings = new HashMap<>();
        navigationStrings.put(SUCCESS_RESULT, defaultSuccess);
        navigationStrings.put(FAILURE_RESULT, defaultFailure);
    }

    return new Task(taskName, preTaskData, postTaskData, navigationStrings, refId);
}

From source file:org.pegdown.JshRenderer.java

public String genStyleClassesForTag(String tag) {
    HashMap<String, String> styles = allTagStyles.get(tag);
    if (MapUtils.isEmpty(styles)) {
        return "";
    }/*from w  ww  .  j av  a  2 s  .c om*/
    return StringUtils.join(styles.keySet(), " ");
}