int PdsResumableBaseRequest::validate()

in sdk/src/PdsRequest.cc [80:108]


int PdsResumableBaseRequest::validate() const
{
    if (partSize_ < PartSizeLowerLimit) {
        return ARG_ERROR_CHECK_PART_SIZE_LOWER;
    }

    if (threadNum_ <= 0) {
        return ARG_ERROR_CHECK_THREAD_NUM_LOWER;
    }

#if !defined(_WIN32)
    if (!checkpointDirW_.empty()) {
        return ARG_ERROR_PATH_NOT_SUPPORT_WSTRING_TYPE;
    }
#endif

    // if directory do not exist, return error
    if (hasCheckpointDir()) {
        if ((!checkpointDir_.empty() && !IsDirectoryExist(checkpointDir_))
#ifdef _WIN32
            || (!checkpointDirW_.empty() && !IsDirectoryExist(checkpointDirW_))
#endif
            ) {
            return ARG_ERROR_CHECK_POINT_DIR_NONEXIST;
        }
    }

    return 0;
}