/******************************************************************************* * Copyright (c) 1998, 2015 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 v1.0 and Eclipse Distribution License v. 1.0 * which accompanies this distribution. * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * http://www.eclipse.org/org/documents/edl-v10.php. * * Contributors: * dmccann - June 17/2009 - 2.0 - Initial implementation ******************************************************************************/ package org.eclipse.persistence.testing.jaxb.externalizedmetadata.xmlattribute; import java.util.List; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement(name="employee") public class Employee { @XmlAttribute(name="firstname") public Object firstName; @XmlAttribute(name="lastname") public String lastName; @XmlAttribute(required=false) public int id; public Object things; public boolean equals(Object obj) { Employee eObj; try { eObj = (Employee) obj; } catch (ClassCastException cce) { return false; } if(!(firstName.equals(eObj.firstName))){ return false; } if(!(lastName.equals(eObj.lastName))){ return false; } if(id != eObj.id){ return false; } if(things instanceof List){ if(!(eObj.things instanceof List)){ return false; } if(((List)things).size() != ((List)eObj.things).size() ){ return false; } for(int i=0;i<((List)things).size(); i++){ Object next = ((List)things).get(i); Object nextCompare =((List)eObj.things).get(i); if(!(next.equals(nextCompare))){ return false; } } }else{ if(!(things.equals(eObj.things))){ return false; } } return true; } }