Skip to content

Commit

Permalink
Auto-propagate stability level to child resources, if necessary.
Browse files Browse the repository at this point in the history
  • Loading branch information
pferraro committed Jan 20, 2024
1 parent cb1b4ad commit 5055eab
Showing 1 changed file with 10 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
import org.jboss.as.controller.PathAddress;
import org.jboss.as.controller.PathElement;
import org.jboss.as.controller.ProcessType;
import org.jboss.as.controller.ProvidedResourceDefinition;
import org.jboss.as.controller.ProxyController;
import org.jboss.as.controller.ResourceDefinition;
import org.jboss.as.controller.access.management.AccessConstraintDefinition;
Expand Down Expand Up @@ -212,7 +213,15 @@ public ManagementResourceRegistration registerSubModel(final ResourceDefinition
throw ControllerLogger.ROOT_LOGGER.nodeAlreadyRegistered(existing.getPathAddress().toCLIStyleString());
}
final NodeSubregistry child = getOrCreateSubregistry(address.getKey());
return child.registerChild(address.getValue(), resourceDefinition);
Stability childStability = resourceDefinition.getStability();
Stability parentStability = this.resourceDefinition.getStability();
// Propagate parent stability-level to child, if necessary
return child.registerChild(address.getValue(), (childStability != parentStability) && !childStability.enables(parentStability) ? new ProvidedResourceDefinition(resourceDefinition) {
@Override
public Stability getStability() {
return parentStability;
}
} : resourceDefinition);
}

@Override
Expand Down

0 comments on commit 5055eab

Please sign in to comment.