Пример #1
0
        private void ValidateDefinitionHostRunnerSupport <T1>(ProvisionRunnerBase runner)
        {
            var attrs = typeof(T1).GetCustomAttributes()
                        .OfType <SPObjectTypeAttribute>();

            if (CurrentProvisionRunner.Name == "SSOM")
            {
                var att = attrs.FirstOrDefault(a => a.ObjectModelType == SPObjectModelType.SSOM);

                if (att == null)
                {
                    throw new SPMeta2UnsupportedCSOMRunnerException();
                }
            }
            if (CurrentProvisionRunner.Name == "CSOM")
            {
                var att = attrs.FirstOrDefault(a => a.ObjectModelType == SPObjectModelType.CSOM);

                if (att == null)
                {
                    throw new SPMeta2UnsupportedCSOMRunnerException();
                }
            }
            if (CurrentProvisionRunner.Name == "O365")
            {
                var att = attrs.FirstOrDefault(a => a.ObjectModelType == SPObjectModelType.CSOM);

                if (att == null)
                {
                    throw new SPMeta2UnsupportedO365RunnerException();
                }
            }
        }
Пример #2
0
        private SPObjectModelType GetRunnerType(ProvisionRunnerBase runner)
        {
            if (runner.Name == "SSOM")
            {
                return(SPObjectModelType.SSOM);
            }

            if (runner.Name == "O365" || runner.Name == "CSOM")
            {
                return(SPObjectModelType.CSOM);
            }

            throw new SPMeta2NotSupportedException(string.Format("Cannot find SPObjectModelType type for runer of type:[{0}]", runner.Name));
        }
Пример #3
0
        protected void WithProvisionRunnerContext(Action <ProvisionRunnerContext> action)
        {
            foreach (var provisionRunner in ProvisionRunners)
            {
                var type = provisionRunner.GetType().FullName;

                provisionRunner.ProvisionGenerationCount   = ProvisionGenerationCount;
                provisionRunner.EnableDefinitionValidation = EnableDefinitionValidation;

                CurrentProvisionRunner = provisionRunner;

                Trace.WriteLine(string.Format("[INF]    Testing with runner impl: [{0}]", type));
                Trace.WriteLine(string.Format("[INF]        - ProvisionGenerationCount: [{0}]", ProvisionGenerationCount));
                Trace.WriteLine(string.Format("[INF]        - EnableDefinitionValidation: [{0}]", EnableDefinitionValidation));

                action(new ProvisionRunnerContext
                {
                    Runner = provisionRunner
                });
            }
        }