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

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

    if (this.tocomeintime == null) clone.tocomeintime = null;
    else clone.tocomeintime = (ims.framework.utils.Time) this.tocomeintime.clone();
    clone.appointment = this.appointment;
    if (this.status == null) clone.status = null;
    else clone.status = (ims.scheduling.vo.lookups.Status_Reason) this.status.clone();
    clone.isValidated = this.isValidated;

    this.isBusy = false;
    return clone;
  }