001/* 002 * SPDX-FileCopyrightText: none 003 * SPDX-License-Identifier: CC0-1.0 004 */ 005 006package gov.nist.secauto.metaschema.databind.codegen; 007 008import gov.nist.secauto.metaschema.core.model.IModule; 009 010import java.util.Collection; 011 012import edu.umd.cs.findbugs.annotations.NonNull; 013 014/** 015 * Provides information about a generated Java class that represents a Module 016 * module. 017 */ 018public interface IGeneratedModuleClass extends IGeneratedClass { 019 020 /** 021 * Get the associated Module module data. 022 * 023 * @return the module data 024 */ 025 @NonNull 026 IModule getModule(); 027 028 /** 029 * Get the Java package name associated with the Module module. 030 * 031 * @return the package name 032 */ 033 @NonNull 034 String getPackageName(); 035 036 /** 037 * Get the collection of generated classes representing definitions associated 038 * with the Module module. 039 * 040 * @return the collection of definition classes 041 */ 042 @NonNull 043 Collection<IGeneratedDefinitionClass> getGeneratedDefinitionClasses(); 044}