1 /* 2 * SPDX-FileCopyrightText: none 3 * SPDX-License-Identifier: CC0-1.0 4 */ 5 6 package gov.nist.secauto.metaschema.databind.codegen; 7 8 import gov.nist.secauto.metaschema.core.model.IModelDefinition; 9 10 import edu.umd.cs.findbugs.annotations.NonNull; 11 12 public interface IGeneratedDefinitionClass extends IGeneratedClass { 13 14 /** 15 * Get the Module definition associated with this class. 16 * 17 * @return the definition 18 */ 19 @NonNull 20 IModelDefinition getDefinition(); 21 22 /** 23 * Indicates if the class represents a root Module assembly which can be the 24 * top-level element/property of an XML, JSON, or YAML instance. 25 * 26 * @return {@code true} if the class is a root assembly, or {@code false} 27 * otherwise 28 */ 29 boolean isRootClass(); 30 }