private void Install(XmlDocument docFiles)
        {
            if (!oWeb.IsRootWeb && !bIsInstalledElsewhere && !bVerifyOnly)
            {
                InstallOnRootWeb();
            }

            if (!bIsInstalledElsewhere)
            {
                _currentPercentSpan = 10;
                _currentBasePercent = 0;
                iInstallSolutions();
            }

            _currentPercentSpan = 10;
            _currentBasePercent = 10;
            InstallFeatures();

            _currentPercentSpan = 40;
            _currentBasePercent = 20;
            InstallLists();

            _currentPercentSpan = 10;
            _currentBasePercent = 60;
            InstallProperties();

            _currentPercentSpan = 10;
            _currentBasePercent = 70;
            docFiles.LoadXml(InstallFiles().OuterXml);

            if (appDef.Community != string.Empty && !bVerifyOnly)
            {
                try
                {
                    iCommunity = Applications.CreateCommunity(appDef.Community, oWeb);

                    oListItem["LinkedCommunity"] = iCommunity;

                    addMessage(ErrorLevels.NoError, "Creating Community", appDef.Community, 0);
                }
                catch (Exception ex)
                {
                    Trace.WriteLine(ex.ToString());
                    addMessage(ErrorLevels.Error, "Creating Community", "Error: " + ex.Message, 0);
                }
            }

            _currentPercentSpan = 10;
            _currentBasePercent = 80;
            iInstallQuickLaunch(docFiles);
        }