public synchronized int hashCode() {
        if (__hashCodeCalc) {
            return 0;
        }
        __hashCodeCalc = true;
        int _hashCode = 1;
        if (getCaregiver() != null) {
            _hashCode += getCaregiver().hashCode();
        }
        if (getGoalDesc() != null) {
            _hashCode += getGoalDesc().hashCode();
        }
        _hashCode += getGoalId();
        _hashCode += new Double(getGoal_expected_value()).hashCode();
        if (getGoal_from_date() != null) {
            _hashCode += getGoal_from_date().hashCode();
        }
        if (getGoal_to_date() != null) {
            _hashCode += getGoal_to_date().hashCode();
        }
        if (getGoal_type() != null) {
            _hashCode += getGoal_type().hashCode();
        }
        if (getMeasuredefinition() != null) {
            _hashCode += getMeasuredefinition().hashCode();
        }
        if (getUser() != null) {
            _hashCode += getUser().hashCode();
        }
        __hashCodeCalc = false;
        return _hashCode;
    }