/*
 * Copyright (c) 2011, 2020 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0,
 * or the Eclipse Distribution License v. 1.0 which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
 */

// Contributors:
// Matt MacIvor - July 4th 2011
package org.eclipse.persistence.testing.jaxb.xmladapter.choice;

import java.util.List;

import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlElements;
import jakarta.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class Foo {

    @XmlElements({
        @XmlElement(name="barA", type=BarA.class),
        @XmlElement(name="single-string", type=String.class)
    })
    public Object singleChoice;

    @XmlElements({
        @XmlElement(name="collection-string", type=String.class),
        @XmlElement(name="barC", type=BarC.class),
        @XmlElement(name="barB", type=BarB.class),
        @XmlElement(name="int", type=Integer.class)
    })

    public List<Object> collectionChoice;


    public boolean equals(Object obj) {
        Foo foo = (Foo)obj;

        return singleChoice.equals(foo.singleChoice) && collectionChoice.equals(foo.collectionChoice);

    }
}
