Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El SDK de MIP es casi completamente asincrónico. Por ejemplo, el SDK realiza cualquier operación que tenga como resultado la E/S de red o archivo de forma asincrónica. Para controlar las notificaciones de eventos de estos eventos asincrónicos, el SDK usa el patrón de observador.
Información general sobre la implementación
Al construir un objeto que realiza una operación asincrónica, implemente una Observer clase . Los observadores reciben los eventos de notificación relacionados con las distintas operaciones asincrónicas en el SDK de MIP y proporcionan el resultado al autor de la llamada.
Puede invalidar las funciones virtuales en cada Observer clase para el patrón asincrónico preferido. El SDK implementa el patrón de observador de notificaciones de eventos mediante std::promise y std::future.
Cada observador específico de cada clase contiene un conjunto de funciones de éxito y de error o fallo para gestionar el resultado de una operación asíncrona. Las funciones success devuelven el objeto asociado a la operación. Las funciones Error/Failure devuelven una excepción que contiene detalles sobre por qué la operación no se realizó correctamente.
Por ejemplo, FileProfile admite las dos operaciones siguientes:
- Puede agregar un nuevo motor al perfil mediante
FileProfile::AddEngineAsync. - Puede descargar un motor del perfil mediante
FileProfile::UnloadEngineAsync.
Dado que el SDK implementa dos Observer funciones por operación asincrónica, puede suponer que cuatroObserver métodos están asociados a FileProfile:
FileProfileObserver::OnAddEngineSuccess()FileProfileObserver::OnAddEngineError()FileProfileObserver::OnUnloadEngineSuccessFileProfileObserver::OnUnloadEngineError()
Clases de observador del SDK de MIP
El SDK de archivos MIP contiene dos observadores:
mip::FileProfile::Observermip::FileHandler::Observer
El SDK de políticas de MIP tiene un observador:
mip::Profile::Observer
El SDK de protección de MIP tiene tres observadores:
mip::ProtectionProfile::Observermip::ProtectionEngine::Observermip::ProtectionHandler::Observer
Pasos siguientes
Más información sobre cómo los diversos SDK implementan y usan observadores: