org.jboss.as.ejb3.subsystem.EJB3Model Maven / Gradle / Ivy
package org.jboss.as.ejb3.subsystem;
import org.jboss.as.controller.ModelVersion;
/**
* Enumerates the supported model versions.
* @author Paul Ferraro
* @author Richard Achmatowicz
*/
public enum EJB3Model {
VERSION_1_2_0(1, 2, 0),
VERSION_1_2_1(1, 2, 1),
VERSION_1_3_0(1, 3, 0),
VERSION_4_0_0(4, 0, 0)
;
static final EJB3Model CURRENT = VERSION_4_0_0;
private final ModelVersion version;
EJB3Model(int major, int minor, int micro) {
this.version = ModelVersion.create(major, minor, micro);
}
public ModelVersion getVersion() {
return this.version;
}
/**
* Indicates whether this model is more recent than the specified version and thus requires transformation
* @param version a model version
* @return true this this model is more recent than the specified version, false otherwise
*/
public boolean requiresTransformation(ModelVersion version) {
return ModelVersion.compare(this.version, version) < 0;
}
/**
* Indicates whether this model is equal to the specified version
* @param version a model version
* @return true this model is equal to the specified version, false otherwise
*/
public boolean matches(ModelVersion version) {
return this.version.equals(version);
}
}