/// <summary>
/// Associates the object with a server (mandatory) and its model parent (optional).
/// </summary>
protected NodeSource(
IServerInternal server,
NodeSource parent)
{
if (server == null) throw new ArgumentNullException("server");
m_server = server;
m_parent = parent;
m_references = new ReferenceCollection();
if (parent != null)
{
m_lock = parent.m_lock;
parent.AddChild(this);
}
}