StateAgency.java


package cpa.app.vip;

import java.io.*;
import java.util.*;


/************************************************************
 * This class is a Java bean that represents a State Agency
 * business object.
 *
 * @author Paul McKinney
 ************************************************************/
public class StateAgency implements Serializable
{

   //properties
   private String id = "";
   private String name = "";
   private String typeCode = "";
   private String contactFirstName = "";
   private String contactLastName = "";
   private String contactTitle = "";
   private String contactTelephoneNum = "";
   private String contactTelephoneExtention = "";
   private String contactTelephoneTollFree = "";
   private String contactFaxNum = "";
   private String contactEmailAddress = "";


   //getters
   public String getId()
   {
      return id;
   }

   public String getName()
   {
      return name;
   }

   public String getTypeCode()
   {
      return typeCode;
   }

   public String getContactFirstName()
   {
      return contactFirstName;
   }

   public String getContactLastName()
   {
      return contactLastName;
   }

   public String getContactTitle()
   {
      return contactTitle;
   }

   public String getContactTelephoneNum()
   {
      return contactTelephoneNum;
   }

   public String getContactTelephoneExtention()
   {
      if (contactTelephoneExtention == null)
         return "";
      else
         return contactTelephoneExtention;
   }

   public String getContactTelephoneTollFree()
   {
      if (contactTelephoneTollFree == null)
         return "";
      else
         return contactTelephoneTollFree;
   }

   public String getContactFaxNum()
   {
      if (contactFaxNum == null)
         return "";
      else
         return contactFaxNum;
   }

   public String getContactEmailAddress()
   {
      if (contactEmailAddress == null)
         return "";
      else
         return contactEmailAddress;
   }


   //setters
   void setId(String id)
   {
      this.id = id.trim();
   }

   void setName(String name)
   {
      this.name = name.trim();
   }

   void setTypeCode(String typeCode)
   {
      this.typeCode = typeCode.trim();
   }

   void setContactFirstName(String contactFirstName)
   {
      this.contactFirstName = contactFirstName.trim();
   }

   void setContactLastName(String contactLastName)
   {
      this.contactLastName = contactLastName.trim();
   }

   void setContactTitle(String contactTitle)
   {
      this.contactTitle = contactTitle.trim();
   }

   void setContactTelephoneNum(String contactTelephoneNum)
   {
      this.contactTelephoneNum = contactTelephoneNum.trim();
   }

   void setContactTelephoneExtention(String contactTelephoneExtention)
   {
      if (contactTelephoneExtention == null)
         this.contactTelephoneExtention = null;
      else
         this.contactTelephoneExtention = contactTelephoneExtention.trim();
   }

   void setContactTelephoneTollFree(String contactTelephoneTollFree)
   {
      if (contactTelephoneTollFree == null)
         this.contactTelephoneTollFree = null;
      else
         this.contactTelephoneTollFree = contactTelephoneTollFree.trim();
   }

   void setContactFaxNum(String contactFaxNum)
   {
      if (contactFaxNum == null)
         this.contactFaxNum = null;
      else
         this.contactFaxNum = contactFaxNum.trim();
   }

   void setContactEmailAddress(String contactEmailAddress)
   {
      if (contactEmailAddress == null)
         this.contactEmailAddress = null;
      else
         this.contactEmailAddress = contactEmailAddress.trim();
   }


   boolean isValid()
   {
      String[] msgArray = getValidateMsgs();

      if (msgArray.length == 0)
         return true;
      else
         return false;
   }


   public String[] getValidateMsgs()
   {
      Vector messages = new Vector();

      if (getId().equals(""))
         messages.addElement("ID field required.");
      else
         if (getId().length() < 3)
            messages.addElement("ID field must be 3 characters in length.");
      if (getName().equals(""))
         messages.addElement("Name field required.");
      if (getTypeCode().equals(""))
         messages.addElement("Type Code field required.");
      if (getContactFirstName().equals(""))
         messages.addElement("First Name field required.");
      if (getContactLastName().equals(""))
         messages.addElement("Last Name field required.");
      if (getContactTitle().equals(""))
         messages.addElement("Title field required.");
      if (getContactTelephoneNum().equals(""))
         messages.addElement("Telephone Number field required.");

      String[] arr = new String[messages.size()];
      messages.copyInto(arr);

      return arr;
   }


   boolean save()
   {
      StateAgencyDA saDA = new StateAgencyDA(this);
      boolean isSaved = false;

      if (isValid())
         if (saDA.save())
            isSaved = true;

      return isSaved;
   }


   boolean restore()
   {
      StateAgencyDA saDA = new StateAgencyDA(this);
      return saDA.restore();
   }


   boolean remove()
   {
      StateAgencyDA saDA = new StateAgencyDA(this);
      return saDA.remove();
   }


   //for debugging only
   public String toString()
   {
      return  "[" + getId() + "]" +
              "[" + getName() + "]" +
              "[" + getTypeCode() + "]" +
              "[" + getContactFirstName() + "]" +
              "[" + getContactLastName() + "]" +
              "[" + getContactTitle() + "]" +
              "[" + getContactTelephoneNum() + "]" +
              "[" + getContactTelephoneExtention() + "]" +
              "[" + getContactTelephoneTollFree() + "]" +
              "[" + getContactFaxNum() + "]" +
              "[" + getContactEmailAddress() + "]"; 
   }

}