|
//------------------------------------------------------------
// 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());
}
}
}
|