package com.opendoorlogistics.api.scripts; import java.io.File; import com.opendoorlogistics.api.ExecutionReport; import com.opendoorlogistics.api.scripts.parameters.Parameters; import com.opendoorlogistics.api.tables.ODLDatastoreAlterable; import com.opendoorlogistics.api.tables.ODLTableAlterable; /** * Class to handle scripts * @author Phil * */ public interface Scripts { /** * Load the script. Can throw a runtime exception if something fails. * @param file * @return */ ScriptOption loadScript(File file); /** * Uses the name to find and return the option id, for any descendents or the script * (i.e. any number of levels down the hierarchy). * @param option * @return */ String findOptionIdByName(ScriptOption option, String optionName); ExecutionReport executeScript( ScriptOption option, String optionId,ODLDatastoreAlterable<? extends ODLTableAlterable> ds); /** * Get interface for dealing with script parameters * @return */ Parameters parameters(); }