public Object clone() { if (this.isBusy) return this; this.isBusy = true; BayConfigForWardViewVo clone = new BayConfigForWardViewVo(this.id, this.version); if (this.bay == null) clone.bay = null; else clone.bay = (ims.core.vo.LocationLiteVo) this.bay.clone(); clone.isactive = this.isactive; clone.male = this.male; clone.female = this.female; clone.paediatric = this.paediatric; clone.numofbeds = this.numofbeds; clone.numofoccupiedbeds = this.numofoccupiedbeds; if (this.openingtime == null) clone.openingtime = null; else clone.openingtime = (ims.framework.utils.Time) this.openingtime.clone(); if (this.closingtime == null) clone.closingtime = null; else clone.closingtime = (ims.framework.utils.Time) this.closingtime.clone(); clone.weekdaysonly = this.weekdaysonly; if (this.bayavailabilitystatus == null) clone.bayavailabilitystatus = null; else clone.bayavailabilitystatus = (ims.core.vo.lookups.WardBayStatus) this.bayavailabilitystatus.clone(); if (this.reopenoutofhours == null) clone.reopenoutofhours = null; else clone.reopenoutofhours = (ims.core.vo.ReopenBayOutOfHoursVoCollection) this.reopenoutofhours.clone(); if (this.temporarybaygender == null) clone.temporarybaygender = null; else clone.temporarybaygender = (ims.core.vo.lookups.Sex) this.temporarybaygender.clone(); if (this.floorbedspacelayout == null) clone.floorbedspacelayout = null; else clone.floorbedspacelayout = (ims.core.vo.FloorBedSpaceLayoutLiteVo) this.floorbedspacelayout.clone(); if (this.dependency == null) clone.dependency = null; else clone.dependency = (ims.core.vo.lookups.BayDependencyLevel) this.dependency.clone(); if (this.closingdetails == null) clone.closingdetails = null; else clone.closingdetails = (ims.core.vo.WardBayClosingDetailsVoCollection) this.closingdetails.clone(); if (this.blockingdetails == null) clone.blockingdetails = null; else clone.blockingdetails = (ims.core.vo.WardBayBlockingDetailsVoCollection) this.blockingdetails.clone(); clone.isValidated = this.isValidated; this.isBusy = false; return clone; }