protected override void ExecuteCmdlet() { var ctx = PnPConnection.Current.PnPContext; if (ctx.Web.IsSyntexContentCenter()) { // Get the model we're publishing ISyntexModel model = Model.GetSyntexModel(); if (model == null) { throw new PSArgumentException("Provide a valid model to get publications for"); } var modelPublications = model.GetModelPublications(); List <Model.Syntex.SyntexModelPublication> modelPublicationsToOutput = new List <Model.Syntex.SyntexModelPublication>(); foreach (var modelPublication in modelPublications) { modelPublicationsToOutput.Add(new Model.Syntex.SyntexModelPublication() { ModelUniqueId = modelPublication.ModelUniqueId, TargetLibraryServerRelativeUrl = modelPublication.TargetLibraryServerRelativeUrl, TargetSiteUrl = modelPublication.TargetSiteUrl, TargetWebServerRelativeUrl = modelPublication.TargetWebServerRelativeUrl, ViewOption = modelPublication.ViewOption }); } WriteObject(modelPublicationsToOutput); } else { WriteWarning("The connected site is not a Syntex Content Center site"); } }
public SyntexModelPipeBind(ISyntexModel syntexModel) { this.syntexModel = syntexModel; }
protected override void ExecuteCmdlet() { var ctx = PnPConnection.Current.PnPContext; if (ctx.Web.IsSyntexContentCenter()) { if (ParameterSpecified(nameof(Batch))) { // Get the model we're publishing ISyntexModel modelToPublish = Model.GetSyntexModel(Batch); if (modelToPublish == null) { throw new PSArgumentException("Provide a valid model to publish"); } modelToPublish.UnPublishModelBatch(Batch.Batch, new SyntexModelUnPublishOptions() { TargetSiteUrl = TargetSiteUrl, TargetWebServerRelativeUrl = TargetWebServerRelativeUrl, TargetLibraryServerRelativeUrl = TargetLibraryServerRelativeUrl, }); } else { // Get the model we're publishing ISyntexModel modelToUnPublish = Model.GetSyntexModel(); if (modelToUnPublish == null) { throw new PSArgumentException("Provide a valid model to unpublish"); } // resolve the list IList listToUnPublishModelFrom = null; using (var listContext = PnPConnection.Current.CloneContext(ListWebUrl)) { var pnpContext = PnPCoreSdk.Instance.GetPnPContext(listContext); listToUnPublishModelFrom = List.GetList(pnpContext); } if (listToUnPublishModelFrom == null) { throw new PSArgumentException("Provide a valid list to unpublish the Syntex model from"); } var unPublishResult = modelToUnPublish.UnPublishModel(listToUnPublishModelFrom); if (unPublishResult != null) { WriteObject(new SyntexPublicationResult() { ErrorMessage = unPublishResult.ErrorMessage, StatusCode = unPublishResult.StatusCode, Publication = new Model.Syntex.SyntexModelPublication() { ModelUniqueId = unPublishResult.Publication.ModelUniqueId, TargetSiteUrl = unPublishResult.Publication.TargetSiteUrl, TargetWebServerRelativeUrl = unPublishResult.Publication.TargetWebServerRelativeUrl, TargetLibraryServerRelativeUrl = unPublishResult.Publication.TargetLibraryServerRelativeUrl, ViewOption = unPublishResult.Publication.ViewOption } }); } } } else { WriteWarning("The connected site is not a Syntex Content Center site"); } }