001/* 002 * JDrupes Builder 003 * Copyright (C) 2025 Michael N. Lipp 004 * 005 * This program is free software: you can redistribute it and/or modify 006 * it under the terms of the GNU Affero General Public License as 007 * published by the Free Software Foundation, either version 3 of the 008 * License, or (at your option) any later version. 009 * 010 * This program is distributed in the hope that it will be useful, 011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 013 * GNU Affero General Public License for more details. 014 * 015 * You should have received a copy of the GNU Affero General Public License 016 * along with this program. If not, see <https://www.gnu.org/licenses/>. 017 */ 018 019package org.jdrupes.builder.mvnrepo; 020 021import org.jdrupes.builder.api.ResourceType; 022import org.jdrupes.builder.api.Resources; 023 024/// A collection of Maven specific [ResourceType]s. 025/// 026@SuppressWarnings({ "PMD.FieldNamingConventions", "PMD.DataClass" }) 027public final class MvnRepoTypes { 028 029 private MvnRepoTypes() { 030 } 031 032 /// The maven repository resource type. 033 public static final ResourceType<MvnRepoResource> MvnRepoResourceType 034 = new ResourceType<>() {}; 035 036 /// The maven repository BOM type. 037 public static final ResourceType< 038 MvnRepoBom> MvnRepoBomType = new ResourceType<>() {}; 039 040 /// The maven repository dependency type. 041 public static final ResourceType< 042 MvnRepoDependency> MvnRepoDependencyType = new ResourceType<>() {}; 043 044 /// The maven repository compilation dependencies type. 045 public static final ResourceType< 046 Resources<MvnRepoDependency>> MvnRepoDependenciesType 047 = new ResourceType<>() {}; 048 049 /// The maven publication type. 050 public static final ResourceType< 051 MvnPublication> MvnPublicationType = new ResourceType<>() {}; 052 053 /// A jar file from the maven repository. 054 public static final ResourceType< 055 MvnRepoJarFile> MvnRepoJarFileType = new ResourceType<>() {}; 056 057 /// A library jar file from the maven repository. 058 public static final ResourceType< 059 MvnRepoLibraryJarFile> MvnRepoLibraryJarFileType 060 = new ResourceType<>() {}; 061 062 /// The POM file type. 063 public static final ResourceType< 064 PomFile> PomFileType = new ResourceType<>() {}; 065 066}