protected SPAlternateUrl GetCurrentAlternateUrl(SPWebApplication webApp, AlternateUrlDefinition definition) { var alternateUrls = webApp.AlternateUrls; var url = definition.Url; var urlZone = (SPUrlZone)Enum.Parse(typeof(SPUrlZone), definition.UrlZone); return(alternateUrls.GetResponseUrl(urlZone)); }
private void DeployDefinition(object modelHost, SPWebApplication webApp, AlternateUrlDefinition definition) { var alternateUrls = webApp.AlternateUrls; var url = definition.Url; var urlZone = (SPUrlZone)Enum.Parse(typeof(SPUrlZone), definition.UrlZone); var responseUrl = GetCurrentAlternateUrl(webApp, definition); InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioning, Object = responseUrl, ObjectType = typeof(SPAlternateUrl), ObjectDefinition = definition, ModelHost = modelHost }); if (!string.IsNullOrEmpty(url)) { responseUrl = new SPAlternateUrl(url, urlZone); alternateUrls.SetResponseUrl(responseUrl); } else { alternateUrls.UnsetResponseUrl(urlZone); } InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = responseUrl, ObjectType = typeof(SPAlternateUrl), ObjectDefinition = definition, ModelHost = modelHost }); alternateUrls.Update(); }
//[SampleMetadataTag(Name = BuiltInTagNames.SampleHidden)] public void CanDeploySimpleAlternateUrlDefinition() { var internalDef = new AlternateUrlDefinition { Url = "http://the-portal", UrlZone = BuiltInUrlZone.Intranet }; var intranetDef = new AlternateUrlDefinition { Url = "http://my-intranet.com.au", UrlZone = BuiltInUrlZone.Internet }; var model = SPMeta2Model.NewWebApplicationModel(webApp => { webApp.AddAlternateUrl(internalDef); webApp.AddAlternateUrl(intranetDef); }); DeployModel(model); }
public static TModelNode AddAlternateUrl <TModelNode>(this TModelNode model, AlternateUrlDefinition definition, Action <AlternateUrlModelNode> action) where TModelNode : ModelNode, IWebApplicationModelNode, new() { return(model.AddTypedDefinitionNode(definition, action)); }
public static TModelNode AddAlternateUrl <TModelNode>(this TModelNode model, AlternateUrlDefinition definition) where TModelNode : ModelNode, IWebApplicationModelNode, new() { return(AddAlternateUrl(model, definition, null)); }
public static ModelNode AddAlternateUrl(this ModelNode model, AlternateUrlDefinition definition, Action <ModelNode> action) { return(model.AddDefinitionNode(definition, action)); }
public static ModelNode AddAlternateUrl(this ModelNode model, AlternateUrlDefinition definition) { return(AddAlternateUrl(model, definition, null)); }