Skip to content

Commit

Permalink
Use simplified LegacyAddOperationTransformation constructor - a legac…
Browse files Browse the repository at this point in the history
…y add operation is one that is missing all override attributes.
  • Loading branch information
pferraro committed May 24, 2017
1 parent 65c6bcb commit cfd0416
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@

package org.jboss.as.clustering.jgroups.subsystem;

import java.util.EnumSet;
import java.util.Set;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import java.util.function.Predicate;
Expand Down Expand Up @@ -172,6 +174,14 @@ protected void convertAttribute(PathAddress address, String name, ModelNode valu
static class LegacyAddOperationTransformation implements UnaryOperator<OperationStepHandler> {
private final Predicate<ModelNode> legacy;

<E extends Enum<E> & org.jboss.as.clustering.controller.Attribute> LegacyAddOperationTransformation(Class<E> attributeClass) {
this(EnumSet.allOf(attributeClass));
}

LegacyAddOperationTransformation(Set<? extends org.jboss.as.clustering.controller.Attribute> attributes) {
this(operation -> attributes.stream().noneMatch(attribute -> operation.hasDefined(attribute.getName())));
}

LegacyAddOperationTransformation(Predicate<ModelNode> legacy) {
this.legacy = legacy;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ static void addTransformations(ModelVersion version, ResourceTransformationDescr
public EncryptProtocolResourceDefinition(String name, Consumer<ResourceDescriptor> descriptorConfigurator, ResourceServiceBuilderFactory<ChannelFactory> parentBuilderFactory) {
super(pathElement(name), descriptorConfigurator.andThen(descriptor -> descriptor
.addAttributes(Attribute.class)
.setAddOperationTransformation(new LegacyAddOperationTransformation(operation -> !operation.hasDefined(Attribute.KEY_STORE.getName()) && !operation.hasDefined(Attribute.KEY_ALIAS.getName()) && !operation.hasDefined(Attribute.CREDENTIAL.getName())))
.setAddOperationTransformation(new LegacyAddOperationTransformation(Attribute.class))
), address -> new EncryptProtocolConfigurationBuilder<>(address), parentBuilderFactory);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ static void addTransformations(ModelVersion version, ResourceTransformationDescr
JDBCProtocolResourceDefinition(String name, Consumer<ResourceDescriptor> descriptorConfigurator, ResourceServiceBuilderFactory<ChannelFactory> parentBuilderFactory) {
super(pathElement(name), descriptorConfigurator.andThen(descriptor -> descriptor
.addAttributes(Attribute.class)
.setAddOperationTransformation(new LegacyAddOperationTransformation(operation -> !operation.hasDefined(Attribute.DATA_SOURCE.getName())))
.setAddOperationTransformation(new LegacyAddOperationTransformation(Attribute.class))
), address -> new JDBCProtocolConfigurationBuilder<>(address), parentBuilderFactory);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ static void addTransformations(ModelVersion version, ResourceTransformationDescr
SocketDiscoveryProtocolResourceDefinition(String name, Consumer<ResourceDescriptor> descriptorConfigurator, ResourceServiceBuilderFactory<ChannelFactory> parentBuilderFactory) {
super(pathElement(name), descriptorConfigurator.andThen(descriptor -> descriptor
.addAttributes(Attribute.class)
.setAddOperationTransformation(new LegacyAddOperationTransformation(operation -> !operation.hasDefined(Attribute.OUTBOUND_SOCKET_BINDINGS.getName())))
.setAddOperationTransformation(new LegacyAddOperationTransformation(Attribute.class))
), address -> new SocketDiscoveryProtocolConfigurationBuilder<>(address), parentBuilderFactory);
}
}

0 comments on commit cfd0416

Please sign in to comment.