public virtual void Process([NotNull] ProcessSharepointItemArgs args) { using (new IntegrationDisabler()) { IntegrationPipelinesRunner.UpdateIntegrationItem(args.SourceIntegrationItem.ID, args.SharepointItem, args.SynchContext, ProcessIntegrationItemsOptions.DefaultOptions, EventSender.Sitecore); } }
public void Process(ProcessSharepointItemArgs args) { Assert.ArgumentNotNull(args, "args"); Assert.IsNotNullOrEmpty(args.SourceIntegrationItemName, "args.SourceIntegrationItemName"); var item = args.SourceIntegrationItem; if (item == null) { return; } var ext = item["Extension"]; if (!string.IsNullOrEmpty(ext)) { var sitecoreExtension = Settings.Media.WhitespaceReplacement + ext; if (Settings.Media.IncludeExtensionsInItemNames) { args.SourceIntegrationItemName = StringUtil.RemovePostfix(sitecoreExtension, args.SourceIntegrationItemName); } args.SourceIntegrationItemName += '.' + ext; } }
public virtual void Process([NotNull] ProcessSharepointItemArgs args) { Assert.ArgumentNotNull(args, "args"); Assert.IsNotNull(args.SharepointItem, "args.SharepointItem"); args.SharepointItem.Delete(); }
public virtual void Process([NotNull] ProcessSharepointItemArgs args) { Assert.ArgumentNotNull(args, "args"); Assert.IsNotNull(args.SharepointItem, "args.SharepointItem"); Assert.IsNotNull(args.SourceIntegrationItem, "args.SourceIntegrationItem"); Assert.IsNotNull(args.SynchContext, "args.SynchContext"); SharepointItemProvider.UpdateItem(args.SourceIntegrationItem, args.SharepointItem, args.SynchContext); }
/// <summary> /// Methos is deleting item in SharePoint. /// </summary> /// <param name="sharepointItemUniqueID">The sharepoint unique id.</param> /// <param name="integrationConfigDataSource">The item which contains integration config data for the target intergation item.</param> public static bool DeleteSharepointItem([NotNull] string sharepointItemUniqueID, [NotNull] Item integrationConfigDataSource) { Assert.ArgumentNotNull(sharepointItemUniqueID, "sharepointItemUniqueID"); Assert.ArgumentNotNull(integrationConfigDataSource, "integrationConfigDataSource"); var synchContext = new SynchContext(integrationConfigDataSource); ProcessSharepointItemArgs pipelineArgs = IntegrationPipelinesRunner.DeleteSharepointItem(sharepointItemUniqueID, synchContext); return(pipelineArgs != null); }
public static SharepointBaseItem CreateSharepointItem([NotNull] string itemName, [NotNull] Item destination, [NotNull] ID templateId) { Assert.ArgumentNotNull(itemName, "itemName"); Assert.ArgumentNotNull(destination, "destination"); Assert.ArgumentNotNull(templateId, "templateId"); var synchContext = new SynchContext(destination); ProcessSharepointItemArgs pipelineArgs = IntegrationPipelinesRunner.CreateSharepointItem(itemName, templateId, synchContext); return(pipelineArgs != null ? pipelineArgs.SharepointItem : null); }
public static ProcessSharepointItemArgs DeleteSharepointItem([NotNull] string sharepointItemID, [NotNull] SynchContext synchContext) { Assert.ArgumentNotNull(sharepointItemID, "sharepointItemID"); Assert.ArgumentNotNull(synchContext, "synchContext"); var pipelineArgs = new ProcessSharepointItemArgs { SharepointItemID = sharepointItemID, SynchContext = synchContext }; return(DeleteSharepointItem(pipelineArgs) ? pipelineArgs : null); }
public static ProcessSharepointItemArgs CreateSharepointItem([NotNull] IntegrationItem sourceIntegrationItem, [NotNull] SynchContext synchContext) { Assert.ArgumentNotNull(sourceIntegrationItem, "sourceIntegrationItem"); Assert.ArgumentNotNull(synchContext, "synchContext"); var args = new ProcessSharepointItemArgs { SourceIntegrationItemName = sourceIntegrationItem.Name, SourceIntegrationItem = sourceIntegrationItem.InnerItem, SourceIntegrationItemTemplateID = sourceIntegrationItem.InnerItem.TemplateID, SynchContext = synchContext }; return(CreateSharepointItem(args) ? args : null); }
public static bool DeleteSharepointItem([NotNull] ProcessSharepointItemArgs pipelineArgs) { Assert.ArgumentNotNull(pipelineArgs, "pipelineArgs"); try { PipelineRunner.AssertRun(PipelineNames.DeleteSharepointItem, pipelineArgs); return(true); } catch (Exception exception) { LogMessage(exception, LogMessages.Text0SharePointItem1HasBeenFailed, "Deleting", pipelineArgs.SharepointItemID); } return(false); }
public void shold_do_noting_if_item_is_not_set() { // Arrange var args = new ProcessSharepointItemArgs { SourceIntegrationItemName = "some name" }; var processor = new ResolveExtension(); // Act processor.Process(args); // Assert args.SourceIntegrationItemName.Should().Be("some name"); }
public static bool CreateSharepointItem([NotNull] ProcessSharepointItemArgs pipelineArgs) { Assert.ArgumentNotNull(pipelineArgs, "pipelineArgs"); try { PipelineRunner.AssertRun(PipelineNames.CreateSharepointItem, pipelineArgs); return(true); } catch (Exception exception) { LogMessage(exception, LogMessages.Text0SharePointItem1HasBeenFailed, "Creating", LogMessageFormatter.FormatText0Item1(pipelineArgs.SynchContext.IntegrationConfigData, pipelineArgs.SourceIntegrationItemName)); } return(false); }
public virtual void Process([NotNull] ProcessSharepointItemArgs args) { Assert.ArgumentNotNull(args, "args"); Assert.IsNotNullOrEmpty(args.SourceIntegrationItemName, "args.SourceIntegrationItemName"); Assert.IsNotNull(args.SourceIntegrationItemTemplateID, "args.SourceIntegrationItemTemplateID"); Assert.IsNotNull(args.SynchContext, "args.SynchContext"); TemplateItem templateItem = args.SynchContext.Database.GetTemplate(args.SourceIntegrationItemTemplateID); if (templateItem == null) { return; } TemplateFieldItem blobTemplateField = templateItem.GetField(FieldNames.Blob); if (blobTemplateField != null && blobTemplateField.Type.ToLower() == "attachment") { try { var sourceItem = args.SourceIntegrationItem; args.SharepointItem = SharepointItemProvider.CreateDocumentItem(args.SourceIntegrationItemName, args.SynchContext, sourceItem.Fields[FieldNames.Blob].GetBlobStream()); using (new EditContext(sourceItem)) { if (sourceItem.Fields[FieldNames.SharepointDataModified] != null) { DateTime owsModified = Convert.ToDateTime(args.SharepointItem["ows_Modified"]); sourceItem[FieldNames.SharepointDataModified] = DateUtil.ToIsoDate(owsModified); } } } catch (Exception e) { args.AddMessage(e.Message); args.AbortPipeline(); } } if (args.SourceIntegrationItemTemplateID == TemplateIDs.IntegrationFolder) { args.SharepointItem = SharepointItemProvider.CreateFolderItem(args.SourceIntegrationItemName, args.SynchContext); } }
public static ProcessSharepointItemArgs UpdateSharepointItem( [NotNull] string sharepointItemID, [NotNull] Item sourceIntegrationItem, [NotNull] SynchContext synchContext) { Assert.ArgumentNotNull(sharepointItemID, "sharepointItemID"); Assert.ArgumentNotNull(sourceIntegrationItem, "sourceIntegrationItem"); Assert.ArgumentNotNull(synchContext, "synchContext"); var pipelineArgs = new ProcessSharepointItemArgs { SharepointItemID = sharepointItemID, SourceIntegrationItem = sourceIntegrationItem, SynchContext = synchContext }; return(UpdateSharepointItem(pipelineArgs) ? pipelineArgs : null); }
public static ProcessSharepointItemArgs CreateSharepointItem( [NotNull] string sourceIntegrationItemName, [NotNull] ID sourceIntegrationItemTemplateID, [NotNull] SynchContext synchContext) { Assert.ArgumentNotNull(sourceIntegrationItemName, "sourceIntegrationItemName"); Assert.ArgumentNotNull(sourceIntegrationItemTemplateID, "sourceIntegrationItemTemplateID"); Assert.ArgumentNotNull(synchContext, "synchContext"); var pipelineArgs = new ProcessSharepointItemArgs { SourceIntegrationItemName = sourceIntegrationItemName, SourceIntegrationItemTemplateID = sourceIntegrationItemTemplateID, SynchContext = synchContext }; return(CreateSharepointItem(pipelineArgs) ? pipelineArgs : null); }
public static bool UpdateSharepointItem([NotNull] Item sourceIntegrationItem) { Assert.ArgumentNotNull(sourceIntegrationItem, "sourceIntegrationItem"); CacheableIntegrationItemInfo cacheableIntegrationItemInfo = IntegrationCache.GetIntegrationItemInfo(sourceIntegrationItem.ID); if (cacheableIntegrationItemInfo == null) { Log.Warn("Can't find item in the Sharepoint cache and so can't update Sharepoint item. ", sourceIntegrationItem); return(false); } var synchContext = new SynchContext(cacheableIntegrationItemInfo.ParentItemId, sourceIntegrationItem.Database); ProcessSharepointItemArgs pipelineArgs = IntegrationPipelinesRunner.UpdateSharepointItem( cacheableIntegrationItemInfo.SharepointItemId, sourceIntegrationItem, synchContext); return(pipelineArgs != null); }
public void should_respect_WhitespaceReplacement_setting(string itemName, string whitespaceReplacement, string expectedName) { using (new SettingsSwitcher("Media.IncludeExtensionsInItemNames", bool.TrueString)) using (new SettingsSwitcher("Media.WhitespaceReplacement", whitespaceReplacement)) { Item sourceItem = itemName.CreateIntegrationItem().WithField("Extension", "ext"); var args = new ProcessSharepointItemArgs { SourceIntegrationItemName = sourceItem.Name, SourceIntegrationItem = sourceItem, }; var processor = new ResolveExtension(); // Act processor.Process(args); // Assert args.SourceIntegrationItemName.Should().Be(expectedName); } }
public void should_fix_name_if_IncludeExtensionsInItemNames_is_enabled(string itemName, string extensions, string expectedName) { // Arrange using (new SettingsSwitcher("Media.IncludeExtensionsInItemNames", bool.TrueString)) { Item sourceItem = itemName.CreateIntegrationItem().WithField("Extension", extensions); var args = new ProcessSharepointItemArgs { SourceIntegrationItemName = sourceItem.Name, SourceIntegrationItem = sourceItem, }; var processor = new ResolveExtension(); // Act processor.Process(args); // Assert args.SourceIntegrationItemName.Should().Be(expectedName); } }