Package org.springframework.samples.petclinic

Source Code of org.springframework.samples.petclinic.Owner

package org.springframework.samples.petclinic;

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

import org.springframework.beans.support.MutableSortDefinition;
import org.springframework.beans.support.PropertyComparator;

/**
* Simple JavaBean domain object representing an owner.
*
* @author Ken Krebs
* @author Juergen Hoeller
*/
public class Owner extends Person {

  private Set pets;

  protected void setPetsInternal(Set pets) {
    this.pets = pets;
  }

  protected Set getPetsInternal() {
    if (this.pets == null) {
      this.pets = new HashSet();
    }
    return this.pets;
  }

  public List getPets() {
    List sortedPets = new ArrayList(getPetsInternal());
    PropertyComparator.sort(sortedPets, new MutableSortDefinition("name", true, true));
    return Collections.unmodifiableList(sortedPets);
  }

  public void addPet(Pet pet) {
    getPetsInternal().add(pet);
    pet.setOwner(this);
  }

  /**
   * Return the Pet with the given name,
   * or null if none found for this Owner.
   * @param name to test
   * @return true if pet name is already in use
   */
  public Pet getPet(String name) {
    return getPet(name, false);
  }

  /**
   * Return the Pet with the given name,
   * or null if none found for this Owner.
   * @param name to test
   * @return true if pet name is already in use
   */
  public Pet getPet(String name, boolean ignoreNew) {
    name = name.toLowerCase();
    for (Iterator it = getPetsInternal().iterator(); it.hasNext();) {
      Pet pet = (Pet) it.next();
      if (!ignoreNew || !pet.isNew()) {
        String compName = pet.getName();
        compName = compName.toLowerCase();
        if (compName.equals(name)) {
          return pet;
        }
      }
    }
    return null;
  }

}
TOP

Related Classes of org.springframework.samples.petclinic.Owner

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.