public static void GetStringRequest(this WebRequest wwwUtil, string url, BeginDownLoad begin, DownLoadText text, DownLoadError error = null)
    {
        GetWWWItem item = WWWItemPool.GetWWWItem <GetWWWItem>();

        if (item == null)
        {
            item = new GetWWWItem();
            WWWItemPool.AddWWWItem(item);
        }

        item.SetValue(url);
        item.beginDownload = begin;
        item.downloadText  = text;
        item.downloadError = error;

        wwwUtil.AddTask(item);
    }
    public static void GetWWWRequest(this WebRequest wwwUtil, string url, BeginDownLoad begin, DownLoadProgress progress, DownLoadFinish finish, DownLoadError error = null)
    {
        GetWWWItem item = WWWItemPool.GetWWWItem <GetWWWItem>();

        if (item == null)
        {
            item = new GetWWWItem();
            WWWItemPool.AddWWWItem(item);
        }

        item.SetValue(url);
        item.beginDownload    = begin;
        item.downloadProgress = progress;
        item.downloadFinish   = finish;
        item.downloadError    = error;

        wwwUtil.AddTask(item);
    }
    public static void WWWFormWWWRequest(this WebRequest wwwUtil, string url, WWWForm form, BeginDownLoad begin, DownLoadFinish finish, DownLoadError error = null)
    {
        FormWWWItem item = WWWItemPool.GetWWWItem <FormWWWItem>();

        if (item == null)
        {
            item = new FormWWWItem();
            WWWItemPool.AddWWWItem(item);
        }

        item.SetValue(url, form);
        item.beginDownload  = begin;
        item.downloadFinish = finish;
        item.downloadError  = error;

        wwwUtil.AddTask(item);
    }
    public static void WWWFormByteRequest(this WebRequest wwwUtil, string url, WWWForm form, BeginDownLoad begin, DownLoadProgress progress, DownLoadData data, DownLoadError error = null)
    {
        FormWWWItem item = WWWItemPool.GetWWWItem <FormWWWItem>();

        if (item == null)
        {
            item = new FormWWWItem();
            WWWItemPool.AddWWWItem(item);
        }

        item.SetValue(url, form);
        item.beginDownload    = begin;
        item.downloadProgress = progress;
        item.downloadData     = data;
        item.downloadError    = error;

        wwwUtil.AddTask(item);
    }
    public static void PostWWWRequest(this WebRequest wwwUtil, string url, byte[] postData, BeginDownLoad begin, DownLoadFinish finish, DownLoadError error = null)
    {
        PostWWWItem item = WWWItemPool.GetWWWItem <PostWWWItem>();

        if (item == null)
        {
            item = new PostWWWItem();
            WWWItemPool.AddWWWItem(item);
        }

        item.SetValue(url, postData);
        item.beginDownload  = begin;
        item.downloadFinish = finish;
        item.downloadError  = error;

        wwwUtil.AddTask(item);
    }
    public static void PostByteRequest(this WebRequest wwwUtil, string url, byte[] postData, BeginDownLoad begin, DownLoadProgress progress, DownLoadData data, DownLoadError error = null)
    {
        PostWWWItem item = WWWItemPool.GetWWWItem <PostWWWItem>();

        if (item == null)
        {
            item = new PostWWWItem();
            WWWItemPool.AddWWWItem(item);
        }

        item.SetValue(url, postData);
        item.beginDownload    = begin;
        item.downloadProgress = progress;
        item.downloadData     = data;
        item.downloadError    = error;

        wwwUtil.AddTask(item);
    }