Skip to content

Commit 06778f4

Browse files
committed
Migrate item transactions
1 parent 3ca7e5a commit 06778f4

File tree

2 files changed

+34
-8
lines changed

2 files changed

+34
-8
lines changed

src/main/java/org/spongepowered/api/item/inventory/transaction/InventoryTransactionResult.java

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.spongepowered.api.Sponge;
2828
import org.spongepowered.api.item.inventory.Inventory;
2929
import org.spongepowered.api.item.inventory.ItemStack;
30+
import org.spongepowered.api.item.inventory.ItemStackLike;
3031
import org.spongepowered.api.item.inventory.ItemStackSnapshot;
3132
import org.spongepowered.api.util.CopyableBuilder;
3233

@@ -179,31 +180,47 @@ interface Builder extends org.spongepowered.api.util.Builder<InventoryTransactio
179180
Builder type(final Type type);
180181

181182
/**
182-
* Adds the provided {@link ItemStack itemstacks} as stacks that have been
183+
* @deprecated Use {@link #reject(ItemStackLike...)} instead.
184+
*/
185+
@Deprecated(forRemoval = true)
186+
default Builder reject(ItemStack... itemStacks) {
187+
return this.reject((ItemStackLike[]) itemStacks);
188+
}
189+
190+
/**
191+
* Adds the provided {@link ItemStackLike itemstacks} as stacks that have been
183192
* "rejected".
184193
*
185194
* @param itemStacks The itemstacks being rejected
186195
* @return This builder, for chaining
187196
*/
188-
Builder reject(ItemStack... itemStacks);
197+
Builder reject(ItemStackLike... itemStacks);
189198

190199
/**
191-
* Adds the provided {@link ItemStack itemstacks} as stacks that have been
200+
* Adds the provided {@link ItemStackLike itemstacks} as stacks that have been
192201
* "rejected".
193202
*
194203
* @param itemStacks The itemstacks being rejected
195204
* @return This builder, for chaining
196205
*/
197-
Builder reject(Iterable<ItemStackSnapshot> itemStacks);
206+
Builder reject(Iterable<? extends ItemStackLike> itemStacks);
207+
208+
/**
209+
* @deprecated Use {@link #poll(ItemStackLike)} instead.
210+
*/
211+
@Deprecated(forRemoval = true)
212+
default Builder.PollBuilder poll(ItemStackSnapshot itemStack) {
213+
return this.poll((ItemStackLike) itemStack);
214+
}
198215

199216
/**
200-
* Sets the provided {@link ItemStackSnapshot} as the stack that has been polled from the inventory.
217+
* Sets the provided {@link ItemStackLike} as the stack that has been polled from the inventory.
201218
*
202219
* @param itemStack The polled itemstack
203220
*
204221
* @return This builder, for chaining
205222
*/
206-
Builder.PollBuilder poll(ItemStackSnapshot itemStack);
223+
Builder.PollBuilder poll(ItemStackLike itemStack);
207224

208225
/**
209226
* Adds the provided {@link ItemStack itemstacks} as stacks that are

src/main/java/org/spongepowered/api/item/inventory/transaction/SlotTransaction.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626

2727
import org.spongepowered.api.data.Transaction;
2828
import org.spongepowered.api.item.inventory.ItemStack;
29+
import org.spongepowered.api.item.inventory.ItemStackLike;
2930
import org.spongepowered.api.item.inventory.ItemStackSnapshot;
3031
import org.spongepowered.api.item.inventory.Slot;
3132

@@ -51,12 +52,20 @@ public SlotTransaction(Slot slot, ItemStackSnapshot original, ItemStackSnapshot
5152
}
5253

5354
/**
54-
* Sets the custom {@link ItemStack} output of this
55+
* @deprecated Use {@link #setCustom(ItemStackLike)} instead.
56+
*/
57+
@Deprecated(forRemoval = true)
58+
public void setCustom(ItemStack stack) {
59+
this.setCustom((ItemStackLike) stack);
60+
}
61+
62+
/**
63+
* Sets the custom {@link ItemStackLike} output of this
5564
* {@link SlotTransaction}.
5665
*
5766
* @param stack The stack
5867
*/
59-
public void setCustom(ItemStack stack) {
68+
public void setCustom(ItemStackLike stack) {
6069
this.setCustom(Objects.requireNonNull(stack, "ItemStack was null").asImmutable());
6170
}
6271

0 commit comments

Comments
 (0)