Record Class AdapterSemanticProfile
java.lang.Object
java.lang.Record
org.j7m.middleware.adapter.spi.AdapterSemanticProfile
- Record Components:
name- stable profile nametype- J7M service familyrequiredCapabilities- immutable required capability setoptionalCapabilities- immutable optional capability set
public record AdapterSemanticProfile(String name, AdapterType type, Set<AdapterCapability> requiredCapabilities, Set<AdapterCapability> optionalCapabilities)
extends Record
Set of required and optional J7M semantics for one adapter service family.
The record is immutable and thread-safe. Required capabilities must pass TCK scenarios for the adapter to be accepted for the profile. Optional capabilities may be unsupported, but limitations must be recorded truthfully.
-
Constructor Summary
ConstructorsConstructorDescriptionAdapterSemanticProfile(String name, AdapterType type, Set<AdapterCapability> requiredCapabilities, Set<AdapterCapability> optionalCapabilities) Creates a semantic profile. -
Method Summary
Modifier and TypeMethodDescriptionstatic AdapterSemanticProfileReturns the consensus semantic profile.static AdapterSemanticProfileReturns the coordination semantic profile.static AdapterSemanticProfileReturns the durable log semantic profile.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.static AdapterSemanticProfileReturns the isolation semantic profile.static AdapterSemanticProfileReturns the durable queue, outbox, and inbox semantic profile.name()Returns the value of thenamerecord component.Returns the value of theoptionalCapabilitiesrecord component.static AdapterSemanticProfileReturns the repository replication semantic profile.Returns the value of therequiredCapabilitiesrecord component.static AdapterSemanticProfilesaga()Returns the saga semantic profile.final StringtoString()Returns a string representation of this record class.type()Returns the value of thetyperecord component.
-
Constructor Details
-
AdapterSemanticProfile
public AdapterSemanticProfile(String name, AdapterType type, Set<AdapterCapability> requiredCapabilities, Set<AdapterCapability> optionalCapabilities) Creates a semantic profile.- Throws:
IllegalArgumentException- if profile name is blank or a capability is both required and optional
-
-
Method Details
-
durableLog
Returns the durable log semantic profile.- Returns:
- durable log profile
-
messaging
Returns the durable queue, outbox, and inbox semantic profile.- Returns:
- messaging profile
-
coordination
Returns the coordination semantic profile.- Returns:
- coordination profile
-
consensus
Returns the consensus semantic profile.- Returns:
- consensus profile
-
repositoryReplication
Returns the repository replication semantic profile.- Returns:
- repository replication profile
-
saga
Returns the saga semantic profile.- Returns:
- saga profile
-
isolation
Returns the isolation semantic profile.- Returns:
- isolation profile
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
name
-
type
-
requiredCapabilities
Returns the value of therequiredCapabilitiesrecord component.- Returns:
- the value of the
requiredCapabilitiesrecord component
-
optionalCapabilities
Returns the value of theoptionalCapabilitiesrecord component.- Returns:
- the value of the
optionalCapabilitiesrecord component
-