Record Class CascadeEdge
java.lang.Object
java.lang.Record
network.ike.workspace.cascade.CascadeEdge
- Record Components:
coordinate- the neighbour's reactor-root coordinate; the primary identity keyrepo- the neighbour's on-disk directory / GitHub repo name; defaults toMavenCoordinate.artifactId()when blankurl- the neighbour's canonical upstream git URL, ornullwhen unknownkind- the Maven model site this edge was derived from; defaults toEdgeKind.DEPENDENCYwhennull
public record CascadeEdge(MavenCoordinate coordinate, String repo, String url, EdgeKind kind)
extends Record
A directed edge in the IKE release cascade — a pointer from one
project to one of its cascade neighbours.
An edge carries the neighbour's reactor-root Maven
MavenCoordinate, an on-disk repo name, a git
url, and an EdgeKind naming the POM site the edge
was derived from. The version property the alignment step
rewrites — once ${G·A} naming is universal — is mechanical:
MavenCoordinate.versionProperty() returns
groupId·artifactId, so no field stores it separately. The
pre-derivation per-project release-cascade.yaml manifests
carried a version-property value here; the derivation
pipeline introduced by IKE-Network/ike-issues#496 replaces it.
-
Constructor Summary
ConstructorsConstructorDescriptionCascadeEdge(String groupId, String artifactId, String repo, String url) Convenience constructor accepting rawgroupId/artifactIdstrings.Convenience constructor accepting rawgroupId/artifactIdstrings plus an explicit kind.CascadeEdge(MavenCoordinate coordinate, String repo, String url, EdgeKind kind) Canonical constructor — validates the coordinate, defaultsrepoto the artifactId, and defaultskindtoEdgeKind.DEPENDENCY. -
Method Summary
Modifier and TypeMethodDescriptionReturns the coordinate'sartifactId.Returns the value of thecoordinaterecord component.final booleanIndicates whether some other object is "equal to" this one.ga()Returns the"groupId:artifactId"display form.groupId()Returns the coordinate'sgroupId.final inthashCode()Returns a hash code value for this object.kind()Returns the value of thekindrecord component.Returns the canonical release-policy property name in the typed-marker family form (<G>__GA__<A>__POLICY).Returns the legacy release-policy property name (G·A·policy).repo()Returns the value of thereporecord component.final StringtoString()Returns a string representation of this record class.url()Returns the value of theurlrecord component.Returns the canonical IKE version-property name in the typed-marker family form (<G>__GA__<A>__VERSION).Returns the legacy version-property name (G·A) used by the pre-#525 convention.
-
Constructor Details
-
CascadeEdge
Canonical constructor — validates the coordinate, defaultsrepoto the artifactId, and defaultskindtoEdgeKind.DEPENDENCY. -
CascadeEdge
Convenience constructor accepting rawgroupId/artifactIdstrings. Wraps them into aMavenCoordinate. DefaultskindtoEdgeKind.DEPENDENCY.- Parameters:
groupId- the MavengroupIdartifactId- the MavenartifactIdrepo- the on-disk directory / GitHub repo nameurl- the canonical upstream git URL
-
CascadeEdge
Convenience constructor accepting rawgroupId/artifactIdstrings plus an explicit kind.- Parameters:
groupId- the MavengroupIdartifactId- the MavenartifactIdrepo- the on-disk directory / GitHub repo nameurl- the canonical upstream git URLkind- the edge kind
-
-
Method Details
-
groupId
Returns the coordinate'sgroupId. Delegates toMavenCoordinate.groupId()for compatibility with the pre-record API.- Returns:
- the
groupId
-
artifactId
Returns the coordinate'sartifactId. Delegates toMavenCoordinate.artifactId()for compatibility with the pre-record API.- Returns:
- the
artifactId
-
ga
-
versionProperty
Returns the canonical IKE version-property name in the typed-marker family form (<G>__GA__<A>__VERSION). Derived from the coordinate; seeMavenCoordinate.versionProperty(). Callers operating during the transition period should fall back toversionPropertyLegacy()when this name resolves to no value.- Returns:
- the canonical typed-marker version-property name
-
versionPropertyLegacy
Returns the legacy version-property name (G·A) used by the pre-#525 convention. Transition-period read fallback only.- Returns:
- the legacy version-property name
-
policyProperty
Returns the canonical release-policy property name in the typed-marker family form (<G>__GA__<A>__POLICY).- Returns:
- the canonical typed-marker policy property name
-
policyPropertyLegacy
Returns the legacy release-policy property name (G·A·policy). Transition-period read fallback only.- Returns:
- the legacy policy property name
-
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). -
coordinate
Returns the value of thecoordinaterecord component.- Returns:
- the value of the
coordinaterecord component
-
repo
-
url
-
kind
-