You've already forked linux-packaging-mono
							
							
		
			
				
	
	
		
			80 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| //------------------------------------------------------------
 | |
| // Copyright (c) Microsoft Corporation.  All rights reserved.
 | |
| //------------------------------------------------------------
 | |
| 
 | |
| namespace System.ServiceModel.Administration
 | |
| {
 | |
|     using System.Collections;
 | |
|     using System.Runtime;
 | |
| 
 | |
|     abstract class ProviderBase : IWmiProvider
 | |
|     {
 | |
|         public static void FillCollectionInfo(ICollection info, IWmiInstance instance, string propertyName)
 | |
|         {
 | |
|             Fx.Assert(null != info, "");
 | |
|             Fx.Assert(null != instance, "");
 | |
| //warning 56507 : Prefer 'string.IsNullOrEmpty(action)' over checks for null and/or emptiness.
 | |
| #pragma warning suppress 56507 //Microsoft; Asserting non-null object for marshalling reasons.  Empty string may be valid input.
 | |
|             Fx.Assert(null != propertyName, "");
 | |
| 
 | |
|             string[] data = new string[info.Count];
 | |
|             int i = 0;
 | |
|             foreach (object o in info)
 | |
|             {
 | |
|                 data[i++] = o.ToString();
 | |
|             }
 | |
|             instance.SetProperty(propertyName, data);
 | |
|         }
 | |
| 
 | |
|         public static void FillCollectionInfo(IEnumerable info, IWmiInstance instance, string propertyName)
 | |
|         {
 | |
|             Fx.Assert(null != info, "");
 | |
|             Fx.Assert(null != instance, "");
 | |
| //warning 56507 : Prefer 'string.IsNullOrEmpty(action)' over checks for null and/or emptiness.
 | |
| #pragma warning suppress 56507 //Microsoft; Asserting non-null object for marshalling reasons.  Empty string may be valid input.
 | |
|             Fx.Assert(null != propertyName, "");
 | |
| 
 | |
|             int i = 0;
 | |
|             foreach (object o in info)
 | |
|             {
 | |
|                 i++;
 | |
|             }
 | |
|             
 | |
|             string[] data = new string[i];
 | |
| 
 | |
|             i = 0;
 | |
|             foreach (object o in info)
 | |
|             {
 | |
|                 data[i++] = o.ToString();
 | |
|             }
 | |
|             instance.SetProperty(propertyName, data);
 | |
|         }
 | |
| 
 | |
|         void IWmiProvider.EnumInstances(IWmiInstances instances)
 | |
|         {
 | |
|             throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new WbemNotSupportedException());
 | |
|         }
 | |
| 
 | |
|         bool IWmiProvider.GetInstance(IWmiInstance contract)
 | |
|         {
 | |
|             throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new WbemNotSupportedException());
 | |
|         }
 | |
| 
 | |
|         bool IWmiProvider.PutInstance(IWmiInstance instance)
 | |
|         {
 | |
|             throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new WbemNotSupportedException());
 | |
|         }
 | |
| 
 | |
|         bool IWmiProvider.DeleteInstance(IWmiInstance instance)
 | |
|         {
 | |
|             throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new WbemNotSupportedException());
 | |
|         }
 | |
| 
 | |
|         bool IWmiProvider.InvokeMethod(IWmiMethodContext method)
 | |
|         {
 | |
|             method.ReturnParameter = 0;
 | |
|             throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new WbemNotSupportedException());
 | |
|         }
 | |
|     }
 | |
| }
 |