示例#1
0
        private IAccessControlEditorDialogProvider ProviderFromResourceType(System.Security.AccessControl.ResourceType resType)
        {
            IAccessControlEditorDialogProvider prov = null;

            switch (resType)
            {
            case System.Security.AccessControl.ResourceType.FileObject:
                prov = new FileProvider();
                break;

            case System.Security.AccessControl.ResourceType.KernelObject:
                prov = new KernelProvider();
                break;

            case System.Security.AccessControl.ResourceType.RegistryKey:
                prov = new RegistryProvider();
                break;

            case TaskResourceType:
                prov = new TaskProvider();
                break;

            default:
                prov = new GenericProvider();
                break;
            }
            return(prov);
        }
示例#2
0
 protected IPrivateLinkProvider BuildProvider(string subscription, string privateLinkResourceType)
 {
     if (!GenericProvider.SupportsPrivateLinkFeature(privateLinkResourceType))
     {
         throw new AzPSApplicationException(string.Format(Properties.Resources.UnsupportPrivateEndpointConnectionType, privateLinkResourceType));
     }
     return(PrivateLinkProviderFactory.CreatePrivateLinkProvder(this, subscription, privateLinkResourceType));
 }
示例#3
0
        /// <summary>
        /// 注册一个环境变量提供程序
        /// </summary>
        /// <param name="name"></param>
        /// <param name="evaluator"></param>
        public static void RegisterProvider(string name, Func <string, object> evaluator)
        {
            if (name == null)
            {
                throw new ArgumentNullException("name");
            }

            if (evaluator == null)
            {
                throw new ArgumentNullException("evaluator");
            }



            var provider = new GenericProvider(name, evaluator);

            RegisterProvider(provider);
        }
示例#4
0
        public override void Execute()
        {
            base.Execute();
            if (this.IsParameterBound(c => c.PrivateLinkResourceId))
            {
                var resourceIdentifier = new ResourceIdentifier(this.PrivateLinkResourceId);
                this.ResourceGroupName       = resourceIdentifier.ResourceGroupName;
                this.ServiceName             = resourceIdentifier.ResourceName;
                this.PrivateLinkResourceType = resourceIdentifier.ResourceType;
                this.Subscription            = resourceIdentifier.Subscription;
            }
            else
            {
                this.Subscription            = DefaultProfile.DefaultContext.Subscription.Id;
                this.PrivateLinkResourceType = DynamicParameters[privateEndpointTypeName].Value as string;
            }
            // First check resource type whether support private link feature, if support then check whether support private link resource feature.
            if (!GenericProvider.SupportsPrivateLinkFeature(this.PrivateLinkResourceType) || !ProviderConfiguration.GetProviderConfiguration(this.PrivateLinkResourceType).SupportListPrivateLinkResource)
            {
                throw new AzPSApplicationException(string.Format(Properties.Resources.UnsupportPrivateLinkResourceType, this.PrivateLinkResourceType));
            }

            IPrivateLinkProvider provider = PrivateLinkProviderFactory.CreatePrivateLinkProvder(this, Subscription, PrivateLinkResourceType);

            if (provider == null)
            {
                throw new ArgumentException(string.Format(Properties.Resources.InvalidResourceId, this.PrivateLinkResourceId));
            }
            if (this.IsParameterBound(c => c.Name))
            {
                var plr = provider.GetPrivateLinkResource(ResourceGroupName, ServiceName, Name);
                WriteObject(plr);
            }
            else
            {
                var plrs = provider.ListPrivateLinkResource(ResourceGroupName, ServiceName);
                WriteObject(plrs, true);
            }
        }
        public static IPrivateLinkProvider CreatePrivateLinkProvder(NetworkBaseCmdlet cmdlet, string subscription, string privateLinkResourceType)
        {
            IPrivateLinkProvider provider = null;

            if (privateLinkResourceType == null)
            {
                return(new NetworkingProvider(cmdlet));
            }

            if (GenericProvider.SupportsPrivateLinkResourceType(privateLinkResourceType))
            {
                return(new GenericProvider(cmdlet, subscription, privateLinkResourceType));
            }

            switch (privateLinkResourceType.ToLower())
            {
            case NETWORKING_TYPE:
            default:
                provider = new NetworkingProvider(cmdlet);
                break;
            }
            return(provider);
        }
示例#6
0
        static void Main(string[] args)
        {
            // Student Details //

            Student st = new Student();

            st.Name = "Mahammad ali";
            st.Age  = 21;
            Student st1 = new Student();

            st1.Name = "Dillip";
            st1.Age  = 22;
            List <Student> list = new List <Student>();

            list.Add(st);
            list.Add(st1);
            StudentList studentList = new StudentList();

            studentList.AllStudent = list.ToArray();
            StudentProviderXml providerXml = new StudentProviderXml();

            providerXml.Serialization(studentList);
            providerXml.Deserialization();
            Console.WriteLine("Student Desirializer Output: ");
            foreach (var item in studentList.AllStudent)
            {
                Console.WriteLine($"Name :{item.Name}");
                Console.WriteLine($"Age  :{item.Age}");
            }

            //Employee Details//

            Employee employee = new Employee();

            employee.Name   = "Ali chotu";
            employee.Salery = 40000;

            Employee employee1 = new Employee();

            employee1.Name   = "Thulasi";
            employee1.Salery = 50000;
            List <Employee> list1 = new List <Employee>();

            list1.Add(employee);
            list1.Add(employee1);
            EmployeeList employeeList = new EmployeeList();

            employeeList.AllEmployees = list1.ToArray();
            EmployeeProviderXml xml = new EmployeeProviderXml();

            xml.EmployeeSerialization(employeeList);
            xml.Deserialization();
            Console.WriteLine("Employee Desirializer Output: ");
            foreach (var item in employeeList.AllEmployees)
            {
                Console.WriteLine($"Name    :{item.Name}");
                Console.WriteLine($"Salery  :{item.Salery}");
            }

            // All Data  // using Generics

            AllData <Student> allData = new AllData <Student>();

            allData.Data = list;
            GenericProvider <Student> generic = new GenericProvider <Student>();

            generic.Serialization(allData, "MyDetailsGeneric.xml");
            Console.WriteLine("Generic DeSerilization output: ");
            generic.Deserialization("MyDetailsGeneric.xml");
            foreach (var item in allData.Data)
            {
                Console.WriteLine($"Name :{item.Name}");
                Console.WriteLine($"Age :{item.Age}");
            }


            //json Student//
            StudentProviderJson providerJson = new StudentProviderJson();

            providerJson.SerializeData(studentList);
            providerJson.DeserializeStudent();
            Console.WriteLine("StudentjsonDeserialze: ");
            foreach (var item in allData.Data)
            {
                Console.WriteLine($"Name :{item.Name}");
                Console.WriteLine($"Age :{item.Age}");
            }
            //json Employee//
            AllData <Employee> allData1 = new AllData <Employee>();

            allData1.Data = list1;
            EmployeeProviderjson providerjson = new EmployeeProviderjson();

            providerjson.SerializeData(employeeList);
            providerjson.DeserializeEmployee();
            Console.WriteLine("EmployeejsonDeserialze: ");
            foreach (var item in allData1.Data)
            {
                Console.WriteLine($"Name :{item.Name}");
                Console.WriteLine($"Age  :{item.Salery}");
            }

            //json using Generic//
            AllData <Employee> allData2 = new AllData <Employee>();

            allData2.Data = list1;
            GenericProviderJson <Employee> providerJson1 = new GenericProviderJson <Employee>();

            providerJson1.SerializeDataGeneric(allData2, "MyEmployee.json");
            providerJson1.DeserializeStudentGEneric("MyEmployee.json");
            Console.WriteLine("JenericEmployeejSon: ");
            foreach (var item in allData2.Data)
            {
                Console.WriteLine($"Name :{item.Name}");
                Console.WriteLine($"Age  :{item.Salery}");
            }
        }