* and is available at http://www.eclipse.org/legal/epl-v10.html
*@
+@import java.util.function.Function;
+@import java.util.Optional
@import org.opendaylight.mdsal.binding.javav2.generator.util.JavaIdentifier.CLASS
@import org.opendaylight.mdsal.binding.javav2.generator.util.JavaIdentifierNormalizer.normalizeSpecificIdentifier
@import org.opendaylight.mdsal.binding.javav2.generator.util.JavaIdentifierNormalizer.normalizeFullPackageName
@import org.opendaylight.yangtools.yang.model.api.Module
@import org.opendaylight.yangtools.yang.model.api.SchemaContext
-@(module: Module, ctx: SchemaContext, importedNames: Map[String, String])
+@(module: Module, ctx: SchemaContext, importedNames: Map[String, String],
+moduleFilePathResolver: Function[Module, Optional[String]])
@if(module != null && ctx != null) {
public final class @{MODULE_INFO_CLASS_NAME} implements @{importedNames.get("yangModuleInfo")} {
private final @{importedNames.get("string")} namespace = "@{module.getNamespace.toString}";
private final @{importedNames.get("string")} semanticVersion = "@{module.getSemanticVersion}";
private final @{importedNames.get("string")} revision = "@{module.getQNameModule.getFormattedRevision}";
- private final @{importedNames.get("string")} resourcePath = "@{getSourcePath(module)}";
+ private final @{importedNames.get("string")} resourcePath = "@{getSourcePath(module, moduleFilePathResolver)}";
private final @{importedNames.get("set")}<YangModuleInfo> importedModules;
public static @{importedNames.get("yangModuleInfo")} getInstance() {
private final @{importedNames.get("string")} semanticVersion = "@{submodule.getSemanticVersion}";
private final @{importedNames.get("string")} namespace = "@{submodule.getNamespace.toString}";
private final @{importedNames.get("string")} revision = "@{submodule.getQNameModule.getFormattedRevision}";
- private final @{importedNames.get("string")} resourcePath = "@{getSourcePath(submodule)}";
+ private final @{importedNames.get("string")} resourcePath = "@{getSourcePath(submodule, moduleFilePathResolver)}";
private final @{importedNames.get("set")}<YangModuleInfo> importedModules;
public static @{importedNames.get("yangModuleInfo")} getInstance() {