/******************************************************************************* * Copyright (c) 2014 Open Door Logistics (www.opendoorlogistics.com) * All rights reserved. This program and the accompanying materials * are made available under the terms of the GNU Lesser Public License v3 * which accompanies this distribution, and is available at http://www.gnu.org/licenses/lgpl.txt ******************************************************************************/ package com.opendoorlogistics.studio.scripts.execution; import java.io.File; import java.util.concurrent.Future; import com.opendoorlogistics.api.ODLApi; import com.opendoorlogistics.api.tables.ODLDatastore; import com.opendoorlogistics.api.tables.ODLListener; import com.opendoorlogistics.api.tables.ODLTableDefinition; import com.opendoorlogistics.core.scripts.elements.Script; import com.opendoorlogistics.studio.appframe.AppPermissions; import com.opendoorlogistics.studio.scripts.editor.adapters.QueryAvailableData; public interface ScriptUIManager { ODLDatastore<? extends ODLTableDefinition> getDatastoreDefinition(); void launchScriptEditor(Script script,String optionId, File file); void launchScriptEditor(File file,String optionId); Future<Void> executeScript(Script script, String []optionIds,String name); void testCompileScript(Script script, String []optionIds,String name); Future<Void> executeScript(File file,String []optionIds); void testCompileScript(File file,String []optionIds); void launchCreateTablesWizard(ODLDatastore<? extends ODLTableDefinition>ds); boolean hasLoadedData(); QueryAvailableData getAvailableFieldsQuery(); void registerDatastoreStructureChangedListener(ODLListener listener); void removerDatastoreStructureChangedListener(ODLListener listener); ODLApi getApi(); AppPermissions getAppPermissions(); }