public static List list()
{
lock (m_podsByName)
{
// TODO - eventually we need a faster way to load
// pod meta-data into memory without actually loading
// every pod into memory
if (m_allPodsList == null)
{
List names = Env.cur().findAllPodNames();
List pods = new List(Sys.PodType);
for (int i=0; i<names.sz(); ++i)
{
string name = (string)names.get(i);
try
{
pods.add(doFind(name, true, null));
}
catch (Exception e)
{
System.Console.WriteLine("ERROR: Invalid pod file: " + name);
Err.dumpStack(e);
}
}
m_allPodsList = pods.ro();
}
return m_allPodsList;
}
}