public ChangeSetInfo(string author, string message, IList<string> changedFiles, int revision, string repositoryId,
                      DateTime changeDate, IList<string> references, LinkInfo link, string repositoryFriendlyName) 
     : this(author, message, changedFiles, revision, changeDate, references)
 {
     Link = link;
 }
        private void LoadLinkInfo(XmlElement configLinkRoot) 
        {
            if(configLinkRoot != null) 
            {
                XmlElement namenode = configLinkRoot[LinkName];
                XmlElement linknode = configLinkRoot[LinkUrl];
                XmlElement onmenunode = configLinkRoot[LinkOnMenu];

                if(namenode != null && linknode != null && onmenunode != null) 
                {
                    string name = namenode.InnerText;
                    string url = linknode.InnerText;
                    bool onmenu;

                    if(!bool.TryParse(onmenunode.InnerText, out onmenu)) 
                    {
                        onmenu = false;
                    }

                    if(!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(url)) 
                    {
                        linkInfo = new LinkInfo(name, url, onmenu);
                    }
                }
            }
        }