public void BrowseTo(Session session, string itemId)
{
TraceState("BrowseTo", itemId);
// try to fetch the target.
ComDaBrowseElement target = m_cache.FindElement(session, itemId);
if (target == null)
{
BrowseDown(session, itemId);
return;
}
if (!target.HasChildren)
{
throw ComUtils.CreateComException(ResultIds.E_INVALIDARG);
}
// update the browse position.
lock (m_lock)
{
m_browsePosition = target;
}
}