deleteEnrollment method

Future<void> deleteEnrollment(
  1. String enrollmentId
)

Delete an enrollment completely

Implementation

Future<void> deleteEnrollment(String enrollmentId) async {
  if (!_initialized) {
    throw Exception('Manager not initialized. Call initialize() first.');
  }

  try {
    _logger.info('Deleting enrollment: $enrollmentId');

    // Use the enroll:delete command via EnrollVerbBuilder
    // Based on auth_cli.dart deleteEnrollment function
    final enrollVerbBuilder = EnrollVerbBuilder()
      ..enrollmentId = enrollmentId
      ..operation = EnrollOperationEnum.delete;

    String response = await _atClient.getRemoteSecondary()!.executeVerb(enrollVerbBuilder);

    // Parse the response if needed
    if (response.startsWith('data:')) {
      response = response.replaceFirst(RegExp(r'^data:'), '');
    }

    _logger.info('Successfully deleted enrollment: $enrollmentId. Response: $response');
  } catch (e, s) {
    _logger.severe('Failed to delete enrollment $enrollmentId: $e', e, s);
    rethrow;
  }
}