001/*
002 * Trident - A Multithreaded Server Alternative
003 * Copyright 2014 The TridentSDK Team
004 *
005 * Licensed under the Apache License, Version 2.0 (the "License");
006 * you may not use this file except in compliance with the License.
007 * You may obtain a copy of the License at
008 *
009 *    http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017
018package net.tridentsdk.inventory.trade;
019
020import net.tridentsdk.inventory.Item;
021
022/**
023 * Represents a pair of ItemStacks designated in a trade
024 *
025 * @author TridentSDK Team
026 */
027public class ItemPair {
028    private final Item one;
029    private final Item two;
030
031    /**
032     * Construct a ItemPair with only one input ItemStack The second ItemStack will be considered null and thus will be
033     * treated as a single input when trading
034     */
035    public ItemPair(Item one) {
036        this(one, null);
037    }
038
039    /**
040     * Construct a ItemPair with two input ItemStacks When used in a trade, the pair will be treated as a double input
041     * when trading
042     */
043    public ItemPair(Item one, Item two) {
044        this.one = one;
045        this.two = two;
046    }
047
048    public Item first() {
049        return this.one;
050    }
051
052    public Item second() {
053        return this.two;
054    }
055}