From 5a1722c45e6fa48acd74a56f2c775f1f06fa8066 Mon Sep 17 00:00:00 2001
From: Angeschossen <24841122+Angeschossen@users.noreply.github.com>
Date: Fri, 3 Jan 2025 15:06:28 +0100
Subject: [PATCH] 7.11.10

---
 ...nt.java => MemberHolderRelationChangeEvent.java} |  5 +++--
 .../lands/api/relations/AllyInvite.java             |  6 ------
 .../lands/api/relations/RelationRequest.java        | 13 +++++++++++++
 3 files changed, 16 insertions(+), 8 deletions(-)
 rename src/main/java/me/angeschossen/lands/api/events/memberholder/{MemberHolderRelationChangedEvent.java => MemberHolderRelationChangeEvent.java} (87%)
 delete mode 100644 src/main/java/me/angeschossen/lands/api/relations/AllyInvite.java
 create mode 100644 src/main/java/me/angeschossen/lands/api/relations/RelationRequest.java

diff --git a/src/main/java/me/angeschossen/lands/api/events/memberholder/MemberHolderRelationChangedEvent.java b/src/main/java/me/angeschossen/lands/api/events/memberholder/MemberHolderRelationChangeEvent.java
similarity index 87%
rename from src/main/java/me/angeschossen/lands/api/events/memberholder/MemberHolderRelationChangedEvent.java
rename to src/main/java/me/angeschossen/lands/api/events/memberholder/MemberHolderRelationChangeEvent.java
index 75b14c6..00c21f2 100644
--- a/src/main/java/me/angeschossen/lands/api/events/memberholder/MemberHolderRelationChangedEvent.java
+++ b/src/main/java/me/angeschossen/lands/api/events/memberholder/MemberHolderRelationChangeEvent.java
@@ -13,8 +13,9 @@
 
 /**
  * Called whenever the relationship between lands or nations changes.
+ * This is not called when an {@link me.angeschossen.lands.api.relations.RelationRequest} is sent, but rather when it is accepted by the receiver.
  */
-public class MemberHolderRelationChangedEvent extends MemberHolderEvent implements Cancellable {
+public class MemberHolderRelationChangeEvent extends MemberHolderEvent implements Cancellable {
 
     public static final HandlerList handlerList = new HandlerList();
 
@@ -29,7 +30,7 @@ public class MemberHolderRelationChangedEvent extends MemberHolderEvent implemen
      * @param target    the target land or nation
      * @param relation  the new relation status
      */
-    public MemberHolderRelationChangedEvent(@NotNull MemberHolder initiator, @NotNull MemberHolder target, @NotNull Relation relation) {
+    public MemberHolderRelationChangeEvent(@NotNull MemberHolder initiator, @NotNull MemberHolder target, @NotNull Relation relation) {
         super(initiator);
 
         this.target = Checks.requireNonNull(target, "target");
diff --git a/src/main/java/me/angeschossen/lands/api/relations/AllyInvite.java b/src/main/java/me/angeschossen/lands/api/relations/AllyInvite.java
deleted file mode 100644
index 3fbec07..0000000
--- a/src/main/java/me/angeschossen/lands/api/relations/AllyInvite.java
+++ /dev/null
@@ -1,6 +0,0 @@
-package me.angeschossen.lands.api.relations;
-
-import com.github.angeschossen.pluginframework.api.holder.Changeable;
-
-public interface AllyInvite extends Changeable {
-}
diff --git a/src/main/java/me/angeschossen/lands/api/relations/RelationRequest.java b/src/main/java/me/angeschossen/lands/api/relations/RelationRequest.java
new file mode 100644
index 0000000..710874a
--- /dev/null
+++ b/src/main/java/me/angeschossen/lands/api/relations/RelationRequest.java
@@ -0,0 +1,13 @@
+package me.angeschossen.lands.api.relations;
+
+import com.github.angeschossen.pluginframework.api.holder.Changeable;
+import org.jetbrains.annotations.NotNull;
+
+public interface RelationRequest extends Changeable {
+    /**
+     * Get the result of this request.
+     *
+     * @return never null
+     */
+    @NotNull Relation getIntent();
+}