SimultaneousChangingEventArgs Class

 

Updated: October 25, 2013

Represents the arguments for the SimultaneousChanging event, which occurs before a configuration change is applied to all role instances.

Namespace:   Microsoft.WindowsAzure.ServiceRuntime
Assembly:  Microsoft.WindowsAzure.ServiceRuntime (in Microsoft.WindowsAzure.ServiceRuntime.dll)

System.Object
  System.EventArgs
    Microsoft.WindowsAzure.ServiceRuntime.SimultaneousChangingEventArgs

public class SimultaneousChangingEventArgs : EventArgs

NameDescription
System_CAPS_pubpropertyChanges

Gets a collection of the topology changes that are ready to be applied to the role instance.

NameDescription
System_CAPS_pubmethodEquals(Object)

(Inherited from Object.)

System_CAPS_protmethodFinalize()

(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

(Inherited from Object.)

System_CAPS_pubmethodGetType()

(Inherited from Object.)

System_CAPS_protmethodMemberwiseClone()

(Inherited from Object.)

System_CAPS_pubmethodToString()

(Inherited from Object.)

The SimultaneousChanging event and the SimultaneousChanged event are used together to identify and manage configuration changes to the service model that affects all role instances at the same time. You cannot cancel the SimultaneousChanging event and the role instances will not restart when this event is received.

You can configure your application to receive simultaneous notifications about role configuration changes by setting the value of the topologyChangeDiscovery attribute to Blast in the service definition file. When the SimultaneousChanging event is received, the role instance has to accept the change. For more information about settings in the service definition file, see Windows Azure Service Definition Schema.

The following code example shows how to use the SimultaneousChangingEventArgs object to obtain notification of simultaneous topology changes that are being made to the role:


public override bool OnStart()
{
   RoleEnvironment.SimultaneousChanging += 
      RoleEnvironmentSimultaneousChanging;

   return base.OnStart();
}   

private void RoleEnvironmentSimultaneousChanging(object sender, 
   SimultaneousChangingEventArgs e) 
{
   // Get the list of topology changes
   var topologyChanges = e.Changes.OfType<SimultaneousTopologyChange>();

   foreach (var change in topologyChanges)
   {
      if (change.RoleName.Equals(
         RoleEnvironment.CurrentRoleInstance.RoleName))
      {
         // Code to process topology changes for the role instance
      }
   }
}

This event occurs after the change has been submitted, but before the changes have been applied to each running role instance.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: