public getAlternates ( ) : GitSharp.Core.ObjectDatabase[] | ||
리턴 | GitSharp.Core.ObjectDatabase[] |
public ObjectDatabase[] getAlternates()
{
ObjectDatabase[] r = _alternates.get();
if (r == null)
{
lock (_alternates)
{
r = _alternates.get();
if (r == null)
{
try
{
r = loadAlternates();
}
catch (IOException)
{
r = NoAlternates;
}
_alternates.set(r); // [henon] possible deadlock?
}
}
}
return r;
}
protected override ObjectDatabase[] loadAlternates() { ObjectDatabase[] loaded = wrapped.getAlternates(); var result = new ObjectDatabase[loaded.Length]; for (int i = 0; i < loaded.Length; i++) { result[i] = loaded[i].newCachedDatabase(); } return(result); }