/******************************************************************************* * Copyright (c) 2012 OpenLegacy Inc. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * OpenLegacy Inc. - initial API and implementation *******************************************************************************/ package org.openlegacy.designtime.mains; import org.openlegacy.exceptions.GenerationException; import java.io.File; import java.io.IOException; /** * A interface for OpenLegacy design-time common UI actions which should is invoked for any IDE (currently eclipse only) * */ public interface DesignTimeExecuter { public static final String MOCK_PROVIDER = "openlegacy-impl"; public static final String CUSTOM_DESIGNTIME_CONTEXT_FILE_NAME = "openlegacy-designtime-context.xml"; public static final String CUSTOM_DESIGNTIME_CONTEXT_RELATIVE_PATH = "src/main/resources/META-INF/spring/" + CUSTOM_DESIGNTIME_CONTEXT_FILE_NAME; public static final String DEFAULT_DESIGNTIME_CONTEXT_FILE_NAME = "/openlegacy-default-designtime-context.xml"; public static final String ASPECT_SUFFIX = "_Aspect.aj"; public static final String RESOURCES_FOLDER_SUFFIX = "-resources"; public static final int DEFAULT_PORT = 23; public static final String DEFAULT_CODE_PAGE = "037"; public void createProject(ProjectCreationRequest projectCreationRequest) throws IOException; void generateModel(GenerateModelRequest generateScreenRequest) throws GenerationException; void generateAspect(File javaFile); void initialize(File projectPath); void generateView(GenerateViewRequest generateViewRequest) throws GenerationException; void generateController(GenerateControllerRequest generateControllerRequest) throws GenerationException; void copyCodeGenerationTemplates(File projectPath); String getPreferences(File projectPath, String key); void savePreference(File projectPath, String key, String value); public void copyDesigntimeContext(File projectPath); }