Exemplo n.º 1
0
        public void CanDeploy_AuditSettings_ToList()
        {
            WithExpectedUnsupportedCSOMnO365RunnerExceptions(() =>
            {
                var siteModel = SPMeta2Model
                                .NewSiteModel(site =>
                {
                    site.AddRandomAuditSetting();
                });

                var listAuditSetting = new AuditSettingsDefinition();

                if (Rnd.Bool())
                {
                    listAuditSetting.AuditFlags = new Collection <string>
                    {
                        BuiltInAuditMaskType.CheckIn,
                        BuiltInAuditMaskType.CheckOut,
                        BuiltInAuditMaskType.Copy,
                        BuiltInAuditMaskType.Move
                    };
                }
                else
                {
                    listAuditSetting.AuditFlags = new Collection <string>
                    {
                        BuiltInAuditMaskType.CheckIn,
                        BuiltInAuditMaskType.Copy,
                    };
                }

                var webModel = SPMeta2Model
                               .NewWebModel(web =>
                {
                    web.AddRandomList(list =>
                    {
                        list.AddAuditSettings(listAuditSetting);
                    });
                });

                TestModels(new[] { siteModel, webModel });
            });
        }
Exemplo n.º 2
0
        private void DeployAuditSettings(object modelHost, AuditSettingsDefinition definition)
        {
            var auditObj = GetCurrentAuditObject(modelHost);

            InvokeOnModelEvent(this, new ModelEventArgs
            {
                CurrentModelNode = null,
                Model            = null,
                EventType        = ModelEventType.OnProvisioning,
                Object           = auditObj,
                ObjectType       = typeof(SPAudit),
                ObjectDefinition = definition,
                ModelHost        = modelHost
            });

            if (definition.AuditFlags.Any())
            {
                var mask = SPAuditMaskType.None;

                foreach (var auditFlag in definition.AuditFlags)
                {
                    var flag = (SPAuditMaskType)Enum.Parse(typeof(SPAuditMaskType), auditFlag);
                    mask = mask | flag;
                }

                auditObj.AuditFlags = mask;
            }

            InvokeOnModelEvent(this, new ModelEventArgs
            {
                CurrentModelNode = null,
                Model            = null,
                EventType        = ModelEventType.OnProvisioned,
                Object           = auditObj,
                ObjectType       = typeof(SPAudit),
                ObjectDefinition = definition,
                ModelHost        = modelHost
            });

            auditObj.Update();
        }
Exemplo n.º 3
0
 public static ModelNode AddAuditSettings(this ModelNode model, AuditSettingsDefinition definition, Action <ModelNode> action)
 {
     return(model.AddDefinitionNode(definition, action));
 }
Exemplo n.º 4
0
 public static ModelNode AddAuditSettings(this ModelNode model, AuditSettingsDefinition definition)
 {
     return(AddAuditSettings(model, definition, null));
 }
Exemplo n.º 5
0
 public static TModelNode AddAuditSettings <TModelNode>(this TModelNode model, AuditSettingsDefinition definition,
                                                        Action <AuditSettingsModelNode> action)
     where TModelNode : ModelNode, IAuditSettingsHostModelNode, new()
 {
     return(model.AddTypedDefinitionNode(definition, action));
 }
Exemplo n.º 6
0
 public static TModelNode AddAuditSettings <TModelNode>(this TModelNode model, AuditSettingsDefinition definition)
     where TModelNode : ModelNode, IAuditSettingsHostModelNode, new()
 {
     return(AddAuditSettings(model, definition, null));
 }