public int compareTo(Object obj, boolean caseInsensitive) {
   if (obj == null) {
     return -1;
   }
   if (caseInsensitive) ; // this is to avoid eclipse warning only.
   if (!(PowerchairSkillsAssessmentVo.class.isAssignableFrom(obj.getClass()))) {
     throw new ClassCastException(
         "A PowerchairSkillsAssessmentVo object cannot be compared an Object of type "
             + obj.getClass().getName());
   }
   PowerchairSkillsAssessmentVo compareObj = (PowerchairSkillsAssessmentVo) obj;
   int retVal = 0;
   if (retVal == 0) {
     if (this.getID_PowerchairSkillsAssessment() == null
         && compareObj.getID_PowerchairSkillsAssessment() != null) return -1;
     if (this.getID_PowerchairSkillsAssessment() != null
         && compareObj.getID_PowerchairSkillsAssessment() == null) return 1;
     if (this.getID_PowerchairSkillsAssessment() != null
         && compareObj.getID_PowerchairSkillsAssessment() != null)
       retVal =
           this.getID_PowerchairSkillsAssessment()
               .compareTo(compareObj.getID_PowerchairSkillsAssessment());
   }
   return retVal;
 }
  public Object clone() {
    if (this.isBusy) return this;
    this.isBusy = true;

    PowerchairSkillsAssessmentVo clone = new PowerchairSkillsAssessmentVo(this.id, this.version);

    if (this.powerchairskill == null) clone.powerchairskill = null;
    else
      clone.powerchairskill =
          (ims.spinalinjuries.vo.lookups.PowerchairSkill) this.powerchairskill.clone();
    if (this.powerchairskillasslevel == null) clone.powerchairskillasslevel = null;
    else
      clone.powerchairskillasslevel =
          (ims.spinalinjuries.vo.lookups.PowerchairSkillAssessedLevel)
              this.powerchairskillasslevel.clone();
    clone.isValidated = this.isValidated;

    this.isBusy = false;
    return clone;
  }