public TaggedTextArray visitSites(string pwd, string sourceList, string permissionString)
{
TaggedTextArray result = new TaggedTextArray();
if (mySession == null || mySession.SiteTable == null)
{
result.fault = new FaultTO("No site table");
}
else if (sourceList == "")
{
result.fault = new FaultTO("Missing sitelist");
}
else if (mySession.Credentials == null)
{
result.fault = new FaultTO("Cannot use this method without previous login");
}
if (result.fault != null)
{
return result;
}
Site[] sites = MdwsUtils.parseSiteList(mySession.SiteTable, sourceList);
List<DataSource> sources = new List<DataSource>(sites.Length);
for (int i = 0; i < sites.Length; i++)
{
for (int j = 0; j < sites[i].Sources.Length; j++)
{
if (sites[i].Sources[j].Protocol == "VISTA" ||
sites[i].Sources[j].Protocol == "FHIE" || sites[i].Sources[j].Protocol == "XVISTA")
{
sources.Add(sites[i].Sources[j]);
}
}
}
return setupMultiSourceQuery(pwd, sources, permissionString);
}