AbstractGlobalFieldDefinition.java
/*
* SPDX-FileCopyrightText: none
* SPDX-License-Identifier: CC0-1.0
*/
package gov.nist.secauto.metaschema.core.model;
import edu.umd.cs.findbugs.annotations.NonNull;
/**
* A base class for a field definition defined globally within a Metaschema
* module.
*
* @param <MODULE>
* the Java type of the containing module
* @param <INSTANCE>
* the expected Java type of an instance of this definition
* @param <FLAG>
* the expected Java type of flag children
*/
public abstract class AbstractGlobalFieldDefinition<
MODULE extends IModule,
INSTANCE extends IFieldInstance,
FLAG extends IFlagInstance>
extends AbstractGlobalDefinition<MODULE, INSTANCE>
implements IFieldDefinition, IFeatureContainerFlag<FLAG> {
/**
* Construct a new global field definition.
*
* @param module
* the parent module containing this definition
*/
protected AbstractGlobalFieldDefinition(@NonNull MODULE module) {
super(module, module::toModelQName);
}
}