Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Wmi / managed / System / Management / ManagementEventArgs.cs / 1305376 / ManagementEventArgs.cs
using System;
namespace System.Management
{
internal class IdentifierChangedEventArgs : EventArgs
{
internal IdentifierChangedEventArgs () {}
}
internal class InternalObjectPutEventArgs : EventArgs
{
private ManagementPath path;
internal InternalObjectPutEventArgs (ManagementPath path)
{
this.path = path.Clone();
}
internal ManagementPath Path {
get { return path; }
}
}
///
/// Represents the virtual base class to hold event data for WMI events.
///
public abstract class ManagementEventArgs : EventArgs
{
private object context;
///
/// Constructor. This is not callable directly by applications.
///
/// The operation context which is echoed back
/// from the operation which trigerred the event.
internal ManagementEventArgs (object context) {
this.context = context;
}
///
/// Gets the operation context echoed back
/// from the operation that triggered the event.
///
///
/// A WMI context object containing
/// context information provided by the operation that triggered the event.
///
public object Context { get { return context; }
}
}
///
/// Holds event data for the event.
///
public class ObjectReadyEventArgs : ManagementEventArgs
{
private ManagementBaseObject wmiObject;
///
/// Constructor.
///
/// The operation context which is echoed back
/// from the operation which triggerred the event.
/// The newly arrived WmiObject.
internal ObjectReadyEventArgs (
object context,
ManagementBaseObject wmiObject
) : base (context)
{
this.wmiObject = wmiObject;
}
///
/// Gets the newly-returned object.
///
///
/// A representing the
/// newly-returned object.
///
public ManagementBaseObject NewObject
{
get {
return wmiObject;
}
}
}
///
/// Holds event data for the event.
///
public class CompletedEventArgs : ManagementEventArgs
{
private readonly int status;
private readonly ManagementBaseObject wmiObject;
///
/// Constructor.
///
/// The operation context which is echoed back
/// from the operation which trigerred the event.
/// The completion status of the operation.
/// Additional status information
/// encapsulated within a WmiObject. This may be null.
internal CompletedEventArgs (
object context,
int status,
ManagementBaseObject wmiStatusObject
) : base (context)
{
wmiObject = wmiStatusObject;
this.status = status;
}
///
/// Gets or sets additional status information
/// within a WMI object. This may be null.
///
///
/// if an error did not occur. Otherwise, may be non-null if the provider
/// supports extended error information.
///
public ManagementBaseObject StatusObject
{
get {
return wmiObject;
}
}
///
/// Gets the completion status of the operation.
///
///
/// A value
/// indicating the return code of the operation.
///
public ManagementStatus Status
{
get {
return (ManagementStatus) status;
}
}
}
///
/// Holds event data for the event.
///
public class ObjectPutEventArgs : ManagementEventArgs
{
private ManagementPath wmiPath;
///
/// Constructor
///
/// The operation context which is echoed back
/// from the operation which trigerred the event.
/// The WmiPath representing the identity of the
/// object that has been put.
internal ObjectPutEventArgs (
object context,
ManagementPath path
) : base (context)
{
wmiPath = path;
}
///
/// Gets the identity of the
/// object that has been put.
///
///
/// A containing the path of the object that has
/// been put.
///
public ManagementPath Path
{
get {
return wmiPath;
}
}
}
///
/// Holds event data for the event.
///
public class ProgressEventArgs : ManagementEventArgs
{
private int upperBound;
private int current;
private string message;
///
/// Constructor
///
/// The operation context which is echoed back
/// from the operation which trigerred the event.
/// A quantity representing the total
/// amount of work required to be done by the operation.
/// A quantity representing the current
/// amount of work required to be done by the operation. This is
/// always less than or equal to upperBound.
/// Optional additional information regarding
/// operation progress.
internal ProgressEventArgs (
object context,
int upperBound,
int current,
string message
) : base (context)
{
this.upperBound = upperBound;
this.current = current;
this.message = message;
}
///
/// Gets the total
/// amount of work required to be done by the operation.
///
///
/// An integer representing the total
/// amount of work for the operation.
///
public int UpperBound
{
get {
return upperBound;
}
}
///
/// Gets the current amount of work
/// done by the operation. This is always less than or equal to .
///
///
/// An integer representing the current amount of work
/// already completed by the operation.
///
public int Current
{
get {
return current;
}
}
///
/// Gets or sets optional additional information regarding the operation's progress.
///
///
/// A string containing additional
/// information regarding the operation's progress.
///
public string Message
{
get {
return (null != message) ? message : String.Empty;
}
}
}
///
/// Holds event data for the event.
///
public class EventArrivedEventArgs : ManagementEventArgs
{
private ManagementBaseObject eventObject;
internal EventArrivedEventArgs (
object context,
ManagementBaseObject eventObject) : base (context)
{
this.eventObject = eventObject;
}
///
/// Gets the WMI event that was delivered.
///
///
/// The object representing the WMI event.
///
public ManagementBaseObject NewEvent
{
get { return this.eventObject; }
}
}
///
/// Holds event data for the event.
///
public class StoppedEventArgs : ManagementEventArgs
{
private int status;
internal StoppedEventArgs (
object context,
int status) : base (context)
{
this.status = status;
}
///
/// Gets the completion status of the operation.
///
///
/// A value representing the status of the
/// operation.
///
public ManagementStatus Status
{
get {
return (ManagementStatus) status;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XPathException.cs
- SafeNativeMethods.cs
- ListBoxItemAutomationPeer.cs
- DesignTimeHTMLTextWriter.cs
- TableLayoutStyleCollection.cs
- ProtocolsConfigurationHandler.cs
- XmlNodeComparer.cs
- EventLogPermissionEntryCollection.cs
- BuildTopDownAttribute.cs
- TreeViewDesigner.cs
- ToolStripPanel.cs
- StatusBarAutomationPeer.cs
- SubpageParagraph.cs
- ConfigurationProviderException.cs
- ReflectTypeDescriptionProvider.cs
- TreeIterator.cs
- MenuItem.cs
- XmlLoader.cs
- ClockController.cs
- EventPrivateKey.cs
- XmlDictionary.cs
- XmlAttributes.cs
- SiteMapNode.cs
- RectangleF.cs
- AsyncOperation.cs
- MasterPageBuildProvider.cs
- NamespaceMapping.cs
- StatusStrip.cs
- PackWebRequestFactory.cs
- CodeTypeReferenceCollection.cs
- Viewport3DVisual.cs
- ExpressionConverter.cs
- ServiceBuildProvider.cs
- IntSecurity.cs
- DataSourceCache.cs
- DispatcherHookEventArgs.cs
- WindowsButton.cs
- EntityReference.cs
- TreeNodeClickEventArgs.cs
- WebPartUtil.cs
- LinqToSqlWrapper.cs
- KnowledgeBase.cs
- FormViewModeEventArgs.cs
- AVElementHelper.cs
- DifferencingCollection.cs
- WorkflowApplicationCompletedException.cs
- MenuStrip.cs
- PreProcessor.cs
- ToolStripPanelDesigner.cs
- PageOrientation.cs
- ItemDragEvent.cs
- BoundColumn.cs
- MsmqTransportReceiveParameters.cs
- WS2007HttpBindingElement.cs
- DurableEnlistmentState.cs
- RichTextBox.cs
- ConditionChanges.cs
- XmlAutoDetectWriter.cs
- RawKeyboardInputReport.cs
- CodeParameterDeclarationExpression.cs
- StylusOverProperty.cs
- CapacityStreamGeometryContext.cs
- FontWeightConverter.cs
- IdentityReference.cs
- WebPartTransformerAttribute.cs
- RegexRunner.cs
- Transform.cs
- XmlNode.cs
- LoadItemsEventArgs.cs
- Barrier.cs
- CopyAttributesAction.cs
- HttpHandlerAction.cs
- EventSetter.cs
- GetIndexBinder.cs
- XmlHierarchicalDataSourceView.cs
- Command.cs
- ArgumentException.cs
- FlowPosition.cs
- JsonReader.cs
- xmlformatgeneratorstatics.cs
- HwndSubclass.cs
- CompilationUtil.cs
- SqlCrossApplyToCrossJoin.cs
- WsatTransactionInfo.cs
- RoutedCommand.cs
- ReferenceConverter.cs
- RequestTimeoutManager.cs
- ClientScriptManager.cs
- DaylightTime.cs
- HttpStaticObjectsCollectionBase.cs
- BinHexEncoder.cs
- XmlNamespaceManager.cs
- MobileRedirect.cs
- NativeMethods.cs
- DataQuery.cs
- DoubleAnimationBase.cs
- XmlSchemaException.cs
- RawStylusActions.cs
- SystemKeyConverter.cs
- ModelTypeConverter.cs