UNPKG

@atomist/rug

Version:

TypeScript model for Atomist Rugs, see http://docs.atomist.com/

75 lines (65 loc) 2.05 kB
/* * Copyright 2015-2017 Atomist Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { TreeNode, GraphNode, FormatInfo, PathExpressionEngine } from "@atomist/rug/tree/PathExpression"; import { ProjectContext } from "@atomist/rug/operations/ProjectEditor"; import { ProjectDecorating } from "./ProjectDecorating"; import { ProjectView } from "./ProjectView"; import { ArtifactContainerView } from "./ArtifactContainerView"; import { ChangeLogging } from "./ChangeLogging"; import { MutableView } from "./MutableView"; export { JavaProject }; /** * Java project */ interface JavaProject extends ProjectDecorating, ProjectView, ArtifactContainerView, ChangeLogging, MutableView { /** * Is this a Maven project? * * @returns {boolean} */ isMaven(): boolean; /** * Is this a Spring project? * * @returns {boolean} */ isSpring(): boolean; /** * Is this a Spring Boot project? * * @returns {boolean} */ isSpringBoot(): boolean; /** * Return the number of Java files in this module * * @returns {number} */ javaFileCount(): number; /** * List the packages in this project * * @returns {any[]} */ packages(): any[]; /** * Rename the given package. All package under it will also be renamed * * @param oldPackage {string} Old package name * @param newPackage {string} The new package name */ renamePackage(oldPackage: string, newPackage: string): void; }