001    package org.bukkit.entity;
002    
003    import org.bukkit.Rotation;
004    import org.bukkit.inventory.ItemStack;
005    
006    /**
007     * Represents an Item Frame
008     */
009    public interface ItemFrame extends Hanging {
010    
011        /**
012         * Get the item in this frame
013         *
014         * @return a defensive copy the item in this item frame
015         */
016        public ItemStack getItem();
017    
018        /**
019         * Set the item in this frame
020         *
021         * @param item the new item
022         */
023        public void setItem(ItemStack item);
024    
025        /**
026         * Get the rotation of the frame's item
027         *
028         * @return the direction
029         */
030        public Rotation getRotation();
031    
032        /**
033         * Set the rotation of the frame's item
034         *
035         * @param rotation the new rotation
036         * @throws IllegalArgumentException if rotation is null
037         */
038        public void setRotation(Rotation rotation) throws IllegalArgumentException;
039    }