Package org.bukkit.inventory

# Interface AnvilInventory

All Superinterfaces:
  `Inventory`, `Iterable<ItemStack>`

public interface AnvilInventory extends Inventory
Interface to the inventory of an Anvil.

## Method Summary

Modifier and Type
Method
Description
`default @Nullable ItemStack`
`getFirstItem()`
Gets the item in the left input slot.
`int`
`getMaximumRepairCost()`
Get the maximum experience cost (in levels) to be allowed by the current repair.
`@Nullable String`
`getRenameText()`
Get the name to be applied to the repaired item.
`int`
`getRepairCost()`
Get the experience cost (in levels) to complete the current repair.
`default @Nullable ItemStack`
`getResult()`
Gets the item in the result slot.
`default @Nullable ItemStack`
`getSecondItem()`
Gets the item in the right input slot.
`default void`
`setFirstItem(@Nullable ItemStack firstItem)`
Sets the item in the left input slot.
`void`
`setMaximumRepairCost(int levels)`
Set the maximum experience cost (in levels) to be allowed by the current repair.
`void`
`setRepairCost(int levels)`
Set the experience cost (in levels) to complete the current repair.
`default void`
`setResult(@Nullable ItemStack result)`
Sets the item in the result slot.
`default void`
`setSecondItem(@Nullable ItemStack secondItem)`
Sets the item in the right input slot.

### Methods inherited from interface org.bukkit.inventory.Inventory

`addItem, all, all, clear, clear, close, contains, contains, contains, contains, containsAtLeast, first, first, firstEmpty, getContents, getHolder, getHolder, getItem, getLocation, getMaxStackSize, getSize, getStorageContents, getType, getViewers, isEmpty, iterator, iterator, remove, remove, removeItem, removeItemAnySlot, setContents, setItem, setMaxStackSize, setStorageContents`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

## Method Details

### getRenameText

@Nullable @Nullable String getRenameText()
Get the name to be applied to the repaired item. An empty string denotes the default item name.

Returns:
  the rename text

### getRepairCost

int getRepairCost()
Get the experience cost (in levels) to complete the current repair.

Returns:
  the experience cost

### setRepairCost

void setRepairCost(int levels)
Set the experience cost (in levels) to complete the current repair.

Parameters:
  `levels` - the experience cost

### getMaximumRepairCost

int getMaximumRepairCost()
Get the maximum experience cost (in levels) to be allowed by the current repair. If the result of `getRepairCost()` exceeds the returned value, the repair result will be air to due being "too expensive".

By default, this level is set to 40. Players in creative mode ignore the maximum repair cost.

Returns:
  the maximum experience cost

### setMaximumRepairCost

void setMaximumRepairCost(int levels)
Set the maximum experience cost (in levels) to be allowed by the current repair. The default value set by vanilla Minecraft is 40.

Parameters:
  `levels` - the maximum experience cost

### getFirstItem

@Nullable default @Nullable ItemStack getFirstItem()
Gets the item in the left input slot.

Returns:
  item in the first slot

### setFirstItem

default void setFirstItem(@Nullable @Nullable ItemStack firstItem)
Sets the item in the left input slot.

Parameters:
  `firstItem` - item to set

### getSecondItem

@Nullable default @Nullable ItemStack getSecondItem()
Gets the item in the right input slot.

Returns:
  item in the second slot

### setSecondItem

default void setSecondItem(@Nullable @Nullable ItemStack secondItem)
Sets the item in the right input slot.

Parameters:
  `secondItem` - item to set

### getResult

@Nullable default @Nullable ItemStack getResult()
Gets the item in the result slot.

Returns:
  item in the result slot

### setResult

default void setResult(@Nullable @Nullable ItemStack result)
Sets the item in the result slot. Note that the client might not be able to take out the item if it does not match the input items.

Parameters:
  `result` - item to set