Example #1
0
 void import_ObjectImported(object sender, SPObjectImportedEventArgs e)
 {
     if (ObjectImported != null)
     {
         ObjectImported(this, e);
     }
 }
Example #2
0
        /// <summary>
        /// Called when [imported].
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="eventArgs">The <see cref="Microsoft.SharePoint.Deployment.SPObjectImportedEventArgs"/> instance containing the event data.</param>
        public void OnImported(object sender, SPObjectImportedEventArgs eventArgs)
        {
            if (m_targetList == null && eventArgs.Type == SPDeploymentObjectType.List)
            {
                // Get the list for later processing.
                m_targetList = m_targetWeb.GetList(eventArgs.TargetUrl);
            }

            if (!m_retargetLinks)
            {
                return;
            }

            if (eventArgs.Type != SPDeploymentObjectType.ListItem)
            {
                return;
            }

            SPImport import = sender as SPImport;

            if (import == null)
            {
                return;
            }

            try
            {
                string url = eventArgs.SourceUrl; // This is not fully qualified so we need the user specified url for the site.
                using (SPSite site = new SPSite(m_sourceUrl))
                    using (SPWeb web = site.OpenWeb(url, false))
                    {
                        string     targetUrl = m_targetSite.MakeFullUrl(eventArgs.TargetUrl);
                        SPListItem li        = web.GetListItem(url);
                        int        count     = li.BackwardLinks.Count;
                        for (int i = count - 1; i >= 0; i--)
                        {
                            SPLink link = li.BackwardLinks[i];
                            using (SPWeb rweb = site.OpenWeb(link.ServerRelativeUrl, false))
                            {
                                object o = rweb.GetObject(link.ServerRelativeUrl);
                                if (o is SPFile)
                                {
                                    SPFile f = o as SPFile;
                                    f.ReplaceLink(eventArgs.SourceUrl, targetUrl);
                                }
                                if (o is SPListItem)
                                {
                                    SPListItem l = o as SPListItem;
                                    l.ReplaceLink(eventArgs.SourceUrl, targetUrl);
                                }
                            }
                        }
                    }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Links could not be retargeted for " + eventArgs.SourceUrl + "\r\n" + ex.Message);
            }
        }
        /// <summary>
        /// Called when [imported].
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="eventArgs">The <see cref="Microsoft.SharePoint.Deployment.SPObjectImportedEventArgs"/> instance containing the event data.</param>
        public void OnImported(object sender, SPObjectImportedEventArgs eventArgs)
        {
            if (m_targetList == null && eventArgs.Type == SPDeploymentObjectType.List)
            {
                // Get the list for later processing.
                m_targetList = m_targetWeb.GetList(eventArgs.TargetUrl);
            }

            if (!m_retargetLinks)
                return;

            if (eventArgs.Type != SPDeploymentObjectType.ListItem)
                return;

            SPImport import = sender as SPImport;
            if (import == null)
                return;

            try
            {
                string url = eventArgs.SourceUrl; // This is not fully qualified so we need the user specified url for the site.
                using (SPSite site = new SPSite(m_sourceUrl))
                using (SPWeb web = site.OpenWeb(url, false))
                {
                    string targetUrl = m_targetSite.MakeFullUrl(eventArgs.TargetUrl);
                    SPListItem li = web.GetListItem(url);
                    int count = li.BackwardLinks.Count;
                    for (int i = count - 1; i >= 0; i--)
                    {
                        SPLink link = li.BackwardLinks[i];
                        using (SPWeb rweb = site.OpenWeb(link.ServerRelativeUrl, false))
                        {
                            object o = rweb.GetObject(link.ServerRelativeUrl);
                            if (o is SPFile)
                            {
                                SPFile f = o as SPFile;
                                f.ReplaceLink(eventArgs.SourceUrl, targetUrl);
                            }
                            if (o is SPListItem)
                            {
                                SPListItem l = o as SPListItem;
                                l.ReplaceLink(eventArgs.SourceUrl, targetUrl);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Links could not be retargeted for " + eventArgs.SourceUrl + "\r\n" + ex.Message);
            }
        }
Example #4
0
 void import_ObjectImported(object sender, SPObjectImportedEventArgs e)
 {
     if (ObjectImported != null)
     {
         ObjectImported(this, e);
     }
 }
Example #5
0
 void import_ObjectImported(object sender, SPObjectImportedEventArgs e)
 {
     if (lblItemAction.InvokeRequired)
     {
         // COB 21 Mar 2010 - introduced try/catch here for strange threading bug..
         try
         {
             updateOnItemImportedExported delUpdateLabel = new updateOnItemImportedExported(import_ObjectImported);
             this.Invoke(delUpdateLabel, new object[] { lblItemAction, e });
         }
         catch (Exception)
         {
         }
     }
     else
     {
         lblItemAction.Text = getWrappedText("Importing " + e.TargetUrl, f_ciIMPORT_ITEM_ACTION_THRESHOLD);
     }
 }