internal static string GetRedirectServerFromPartnerId(string redirectFormat, int partnerId, int currentSiteId, int startRange, int endRange, Trace tracer, bool overrideCurrentSiteCheck, bool throwExceptions) { if (startRange > endRange) { throw new InvalidOperationException(string.Format("startRange: {0} greater than endRange: {1}", startRange, endRange)); } if (string.IsNullOrEmpty(redirectFormat)) { return(string.Empty); } if (partnerId == -1 || partnerId < startRange || partnerId > endRange) { if (partnerId == -1) { string message = string.Format("The partner id {0} is invalid", partnerId); EdgeSyncMservConnector.TraceError(tracer, message); if (throwExceptions) { throw new InvalidPartnerIdException(message); } } else { string message2 = string.Format("The partner id {0} is out of range", partnerId); EdgeSyncMservConnector.TraceError(tracer, message2); if (throwExceptions) { throw new InvalidOperationException(message2); } } return(string.Empty); } if (partnerId == currentSiteId && !overrideCurrentSiteCheck) { EdgeSyncMservConnector.TraceDebug(tracer, string.Format("The partner id {0} is the same as the current site id", partnerId)); return(string.Empty); } return(string.Format(CultureInfo.InvariantCulture, redirectFormat, new object[] { partnerId })); }