private final SchemaContext context;
private final String defaultPrefix;
- public StringModuleInstanceIdentifierCodec(SchemaContext context) {
+ public StringModuleInstanceIdentifierCodec(final SchemaContext context) {
this.context = Preconditions.checkNotNull(context);
this.dataContextTree = DataSchemaContextTree.from(context);
this.defaultPrefix = "";
}
- StringModuleInstanceIdentifierCodec(final SchemaContext context, @Nonnull final String defaultPrefix) {
+ public StringModuleInstanceIdentifierCodec(final SchemaContext context, @Nonnull final String defaultPrefix) {
this.context = Preconditions.checkNotNull(context);
this.dataContextTree = DataSchemaContextTree.from(context);
this.defaultPrefix = defaultPrefix;
@Override
protected Module moduleForPrefix(@Nonnull final String prefix) {
- if (prefix.isEmpty() && !this.defaultPrefix.isEmpty()) {
- return this.context.findModuleByName(this.defaultPrefix, null);
- } else {
- return this.context.findModuleByName(prefix, null);
- }
+ final String moduleName = prefix.isEmpty() && !defaultPrefix.isEmpty() ? defaultPrefix : prefix;
+ return context.findModules(moduleName).stream().findFirst().orElse(null);
}
@Nonnull
@Override
- protected DataSchemaContextTree getDataContextTree() {
+ public DataSchemaContextTree getDataContextTree() {
return this.dataContextTree;
}
@Nullable
@Override
protected String prefixForNamespace(@Nonnull final URI namespace) {
- final Module module = this.context.findModuleByNamespaceAndRevision(namespace, null);
- return module == null ? null : module.getName();
+ return this.context.findModules(namespace).stream().findFirst().map(Module::getName).orElse(null);
}
-}
\ No newline at end of file
+}