/******************************************************************************* * Copyright (c) 2012-2017 Codenvy, S.A. * 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: * Codenvy, S.A. - initial API and implementation *******************************************************************************/ package org.eclipse.che.api.project.templates.shared.dto; import org.eclipse.che.api.core.rest.shared.dto.Link; import org.eclipse.che.api.machine.shared.dto.CommandDto; import org.eclipse.che.api.workspace.shared.dto.NewProjectConfigDto; import org.eclipse.che.api.workspace.shared.dto.ProjectProblemDto; import org.eclipse.che.api.workspace.shared.dto.SourceStorageDto; import org.eclipse.che.dto.shared.DTO; import java.util.List; import java.util.Map; /** @author Vitaly Parfonov */ @DTO public interface ProjectTemplateDescriptor { String getName(); void setName(String name); ProjectTemplateDescriptor withName(String name); String getPath(); void setPath(String path); ProjectTemplateDescriptor withPath(String path); /** Get description of project template. */ String getDescription(); /** Set description of project template. */ void setDescription(String description); ProjectTemplateDescriptor withDescription(String description); /** Get project type of project template. */ String getProjectType(); /** Set project type of project template. */ void setProjectType(String projectType); ProjectTemplateDescriptor withProjectType(String projectType); List<String> getMixins(); void setMixins(List<String> mixins); ProjectTemplateDescriptor withMixins(List<String> mixins); Map<String, List<String>> getAttributes(); void setAttributes(Map<String, List<String>> attributes); ProjectTemplateDescriptor withAttributes(Map<String, List<String>> attributes); List<ProjectProblemDto> getProblems(); /** @see #getProblems */ void setProblems(List<ProjectProblemDto> problems); ProjectTemplateDescriptor withProblems(List<ProjectProblemDto> problems); SourceStorageDto getSource(); void setSource(SourceStorageDto sources); ProjectTemplateDescriptor withSource(SourceStorageDto sources); List<Link> getLinks(); void setLinks(List<Link> links); ProjectTemplateDescriptor withLinks(List<Link> links); /** Get display name of project template. */ String getDisplayName(); /** Set display name of project template. */ void setDisplayName(String displayName); ProjectTemplateDescriptor withDisplayName(String displayName); /** Get category of project template. */ String getCategory(); /** Set category of project template. */ void setCategory(String category); ProjectTemplateDescriptor withCategory(String category); List<CommandDto> getCommands(); void setCommands(List<CommandDto> commands); ProjectTemplateDescriptor withCommands(List<CommandDto> commands); List<String> getTags(); void setTags(List<String> tags); ProjectTemplateDescriptor withTags(List<String> tags); List<NewProjectConfigDto> getProjects(); void setProjects(List<NewProjectConfigDto> projects); ProjectTemplateDescriptor withProjects(List<NewProjectConfigDto> projects); Map<String, String> getOptions(); void setOptions(Map<String, String> options); ProjectTemplateDescriptor withOptions(Map<String, String> options); }