import org.opendaylight.yangtools.yang.data.api.schema.MountPointContextFactory;
import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.spi.AbstractEffectiveModelContextProvider;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
// TODO: this should really come from rfc8528-data-util
-final class DeviceMountPointContext extends AbstractEffectiveModelContextProvider implements Immutable,
- MountPointContext {
+final class DeviceMountPointContext implements Immutable, MountPointContext {
private static final Logger LOG = LoggerFactory.getLogger(DeviceMountPointContext.class);
private static final NodeIdentifier MOUNT_POINT = NodeIdentifier.create(
QName.create(SchemaMountConstants.RFC8528_MODULE, "mount-point").intern());
QName.create(SchemaMountConstants.RFC8528_MODULE, "parent-reference").intern());
private final ImmutableMap<MountPointLabel, NetconfMountPointContextFactory> mountPoints;
+ private final @NonNull EffectiveModelContext modelContext;
- private DeviceMountPointContext(final EffectiveModelContext schemaContext,
+ private DeviceMountPointContext(final EffectiveModelContext modelContext,
final Map<MountPointLabel, NetconfMountPointContextFactory> mountPoints) {
- super(schemaContext);
+ this.modelContext = requireNonNull(modelContext);
this.mountPoints = ImmutableMap.copyOf(mountPoints);
}
return emptyContext;
}
- final EffectiveModelContext schemaContext = emptyContext.getEffectiveModelContext();
+ final EffectiveModelContext schemaContext = emptyContext.modelContext();
final DataContainerChild mountPoint = optMountPoint.orElseThrow();
checkArgument(mountPoint instanceof MapNode, "mount-point list %s is not a MapNode", mountPoint);
return new DeviceMountPointContext(schemaContext, mountPoints);
}
+ @Override
+ public EffectiveModelContext modelContext() {
+ return modelContext;
+ }
+
@Override
public Optional<MountPointContextFactory> findMountPoint(@NonNull final MountPointLabel label) {
return Optional.ofNullable(mountPoints.get(requireNonNull(label)));