001 package org.apache.maven.plugin.prefix;
002
003 import org.sonatype.aether.repository.ArtifactRepository;
004
005 /*
006 * Licensed to the Apache Software Foundation (ASF) under one
007 * or more contributor license agreements. See the NOTICE file
008 * distributed with this work for additional information
009 * regarding copyright ownership. The ASF licenses this file
010 * to you under the Apache License, Version 2.0 (the
011 * "License"); you may not use this file except in compliance
012 * with the License. You may obtain a copy of the License at
013 *
014 * http://www.apache.org/licenses/LICENSE-2.0
015 *
016 * Unless required by applicable law or agreed to in writing,
017 * software distributed under the License is distributed on an
018 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
019 * KIND, either express or implied. See the License for the
020 * specific language governing permissions and limitations
021 * under the License.
022 */
023
024 /**
025 * Describes the result of a plugin prefix resolution request.
026 *
027 * @since 3.0
028 * @author Benjamin Bentmann
029 */
030 public interface PluginPrefixResult
031 {
032
033 /**
034 * The resolved group id for the plugin.
035 *
036 * @return The resolved group id for the plugin, never {@code null}.
037 */
038 String getGroupId();
039
040 /**
041 * The resolved artifact id for the plugin.
042 *
043 * @return The resolved artifact id for the plugin, never {@code null}.
044 */
045 String getArtifactId();
046
047 /**
048 * The repository from which the plugin prefix was resolved.
049 *
050 * @return The repository from which the plugin prefix was resolved or {@code null} if the prefix was resolved from
051 * the supplied POM.
052 */
053 ArtifactRepository getRepository();
054
055 }