The following examples show how to provision a Forefront Identity Manager Certificate Management (FIM CM) Disable request. The first example demonstrates how to do this using CreateDisableRequest. The second example shows a more manual approach.

CLMUtils.CreateDisableRequest

Visual Basic  Copy Code
Sub Provision(ByVal mventry As MVEntry)
	Implements IMVSynchronization.Provision

	Try
		If mventry("objectGUID").IsPresent Then
			CLMUtils.CreateDisableRequest(CLMMA,
				New Guid(mventry("objectGUID").BinaryValue),
				"CLM Sample Profile Template")
		End If
	' Log and rethrow any exception.
	Catch ex As Exception
		Logging.Logging.LogException(ex,
			"Provision",
			"Caught exception",
			False)
		Throw
	End Try

End Sub 'IMVSynchronization.Provision
C#  Copy Code
void IMVSynchronization.Provision (MVEntry mventry)
{
	try
	{
		if (mventry["objectGUID"].IsPresent)
		{
			CLMUtils.CreateDisableRequest(CLMMA,
				new Guid(mventry["objectGUID"].BinaryValue),
				"CLM Sample Profile Template");
	}
}
	// Log and rethrow any exception.
	catch(Exception ex)
	{
		Logging.Logging.LogException(ex,
			"Provision",
			"Caught exception",
			false);
		throw;
}
}

Provision Disable Request

Visual Basic  Copy Code
Sub Provision(ByVal mventry As MVEntry)
	Implements IMVSynchronization.Provision

	Try
		If mventry("objectGUID").IsPresent Then
			Dim targetCLMMA As ConnectedMA =
				mventry.ConnectedMAs("CertificateLifecycleManagerMA")
		
			Dim csentry As CSEntry =
				targetCLMMA.Connectors.StartNewConnector("clmRequest")
		
			csentry.DN = targetCLMMA.EscapeDNComponent("CN=" +
				Guid.NewGuid().ToString())
		
			csentry("req_type").IntegerValue = 4
			csentry("req_type_name").Value = "Disable"
			csentry("req_profile_uuid").BinaryValue =
				New Guid().ToByteArray()
			' GUID of profile to associate request with 
			csentry.CommitNewConnector().
		End If
	' Log and rethrow any exception.
	Catch ex As Exception
		Logging.Logging.LogException(ex,
			"Provision",
			"Caught exception",
			False)
		Throw
	End Try

End Sub 'IMVSynchronization.Provision
C#  Copy Code
void IMVSynchronization.Provision(MVEntry mventry)
{
	try
	{
		if (mventry["objectGUID"].IsPresent)
		{
			ConnectedMA targetCLMMA =
				mventry.ConnectedMAs["CertificateLifecycleManagerMA"];

			CSEntry csentry =
				targetCLMMA.Connectors.StartNewConnector("clmRequest");

			csentry.DN = targetCLMMA.EscapeDNComponent("CN=" +
				Guid.NewGuid().ToString());

			csentry["req_type"].IntegerValue = 4;
			csentry["req_type_name"].Value = "Disable";
			csentry["req_profile_uuid"].BinaryValue =
				new Guid(GUIDValue).ToByteArray();
				// GUIDValue is the GUID of the profile to
				// associate the request with
	 
			csentry.CommitNewConnector();
	}
}

	// Log and rethrow any exception.
	catch (Exception ex)
	{
		Logging.Logging.LogException(ex,
			"Provision",
			"Caught exception",
			false);
		throw;
}
}

See Also