All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.cloudslang.lang.cli.utils.CompilerHelper Maven / Gradle / Ivy

The newest version!
/*******************************************************************************
 * (c) Copyright 2016 Hewlett-Packard Development Company, L.P.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Apache License v2.0 which accompany this distribution.
 *
 * The Apache License is available at
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 *******************************************************************************/
package io.cloudslang.lang.cli.utils;

import io.cloudslang.lang.compiler.modeller.result.CompilationModellingResult;
import io.cloudslang.lang.entities.CompilationArtifact;
import io.cloudslang.lang.entities.SystemProperty;
import io.cloudslang.lang.entities.bindings.values.Value;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface CompilerHelper {

    CompilationArtifact compile(String filePath, List dependencies);

    CompilationModellingResult compileSource(String filePath, List dependencies);

    List compileFolders(List foldersPaths);

    /**
     * Load system property sources written in yaml and map them to fully qualified names
     *
     * @param systemPropertyFiles paths to the files containing the system properties
     * @return map containing all of the system properties with fully qualified keys
     */
    Set loadSystemProperties(List systemPropertyFiles);

    /**
     * Load input sources written in yaml and map them to fully qualified names
     *
     * @param inputFiles paths to the files containing the inputs
     * @return map containing all of the inputs with fully qualified keys
     */
    Map loadInputsFromFile(List inputFiles);

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy