private string AddCampaignParameters <T>(HitBuilder <T> builder)
        {
            if (!trackingCodeSet)
            {
                return("");
            }
            String url = "";

            url += AddOptionalMPParameter(Fields.CAMPAIGN_NAME, builder.GetCampaignName());
            url += AddOptionalMPParameter(Fields.CAMPAIGN_SOURCE, builder.GetCampaignSource());
            url += AddOptionalMPParameter(Fields.CAMPAIGN_MEDIUM, builder.GetCampaignMedium());
            url += AddOptionalMPParameter(Fields.CAMPAIGN_KEYWORD, builder.GetCampaignKeyword());
            url += AddOptionalMPParameter(Fields.CAMPAIGN_CONTENT, builder.GetCampaignContent());
            url += AddOptionalMPParameter(Fields.CAMPAIGN_ID, builder.GetCampaignID());
            url += AddOptionalMPParameter(Fields.GCLID, builder.GetGclid());
            url += AddOptionalMPParameter(Fields.DCLID, builder.GetDclid());

            return(url);
        }
        private string AddCustomVariables <T>(HitBuilder <T> builder)
        {
            if (!trackingCodeSet)
            {
                return("");
            }
            String url = "";

            foreach (KeyValuePair <int, string> entry in builder.GetCustomDimensions())
            {
                if (entry.Value != null)
                {
                    url += Fields.CUSTOM_DIMENSION.ToString() + entry.Key + "=" +
                           WWW.EscapeURL(entry.Value.ToString());
                }
            }
            foreach (KeyValuePair <int, float> entry in builder.GetCustomMetrics())
            {
                url += Fields.CUSTOM_METRIC.ToString() + entry.Key + "=" +
                       WWW.EscapeURL(entry.Value.ToString());
            }
            return(url);
        }