@Override
  public Object clone() {
    SyncDLObjectImpl syncDLObjectImpl = new SyncDLObjectImpl();

    syncDLObjectImpl.setSyncDLObjectId(getSyncDLObjectId());
    syncDLObjectImpl.setCompanyId(getCompanyId());
    syncDLObjectImpl.setUserId(getUserId());
    syncDLObjectImpl.setUserName(getUserName());
    syncDLObjectImpl.setCreateTime(getCreateTime());
    syncDLObjectImpl.setModifiedTime(getModifiedTime());
    syncDLObjectImpl.setRepositoryId(getRepositoryId());
    syncDLObjectImpl.setParentFolderId(getParentFolderId());
    syncDLObjectImpl.setTreePath(getTreePath());
    syncDLObjectImpl.setName(getName());
    syncDLObjectImpl.setExtension(getExtension());
    syncDLObjectImpl.setMimeType(getMimeType());
    syncDLObjectImpl.setDescription(getDescription());
    syncDLObjectImpl.setChangeLog(getChangeLog());
    syncDLObjectImpl.setExtraSettings(getExtraSettings());
    syncDLObjectImpl.setVersion(getVersion());
    syncDLObjectImpl.setVersionId(getVersionId());
    syncDLObjectImpl.setSize(getSize());
    syncDLObjectImpl.setChecksum(getChecksum());
    syncDLObjectImpl.setEvent(getEvent());
    syncDLObjectImpl.setLanTokenKey(getLanTokenKey());
    syncDLObjectImpl.setLastPermissionChangeDate(getLastPermissionChangeDate());
    syncDLObjectImpl.setLockExpirationDate(getLockExpirationDate());
    syncDLObjectImpl.setLockUserId(getLockUserId());
    syncDLObjectImpl.setLockUserName(getLockUserName());
    syncDLObjectImpl.setType(getType());
    syncDLObjectImpl.setTypePK(getTypePK());
    syncDLObjectImpl.setTypeUuid(getTypeUuid());

    syncDLObjectImpl.resetOriginalValues();

    return syncDLObjectImpl;
  }