Aracılığıyla paylaş


Microsoft Information Protection SDK - Gözlemci kavramları

MIP SDK'sı neredeyse tamamen zaman uyumsuz olacak şekilde tasarlanmıştır. Örneğin, ağ veya dosya girdi/çıktısı ile sonuçlanabilecek tüm işlemler eşzamansız olarak gerçekleştirilir. SDK, bu zaman uyumsuz olaylar için olay bildirimlerini işlemek için gözlemci desenini kullanır.

Uygulamaya genel bakış

Zaman uyumsuz bir işlem gerçekleştirecek bir nesne oluşturulurken bir Observer sınıfın uygulanması gerekir. Gözlemciler, MIP SDK'sı içindeki çeşitli zaman uyumsuz işlemlerle ilgili bildirim olaylarını alır ve sonucu çağırana sağlar.

Her Observer sınıftaki işlevler sanaldır ve tercih edilen zaman uyumsuz desen için geçersiz kılınır. SDK, std::promise ve std::future aracılığıyla olay bildirimi gözlemci desenini uygular.

Sınıfa özgü her gözlemci, asenkron bir işlemin sonucu için bir dizi başarı ve hata veya başarısızlık işlevi içerir. Başarı işlevleri, işlemle ilişkili nesneyi döndürür. Hata/Hatası işlevleri, işlemin neden başarısız olduğuna ilişkin ayrıntıları içeren bir özel durum döndürür.

Örneğin, FileProfile aşağıdaki iki işlemi destekler:

  • Profile'a yeni bir motor ekleyebilir aracılığıyla FileProfile::AddEngineAsync.
  • Bir motoru profilden FileProfile::UnloadEngineAsync aracılığıyla kaldırabilir.

Zaman uyumsuz işlem başına iki Observer işlev uygulandığı için, FileProfile ile ilişkili dörtObserver yöntem olduğu varsayılabilir:

  • FileProfileObserver::OnAddEngineSuccess()
  • FileProfileObserver::OnAddEngineError()
  • FileProfileObserver::OnUnloadEngineSuccess
  • FileProfileObserver::OnUnloadEngineError().

MIP SDK Gözlemci Sınıfları

MIP Dosya SDK'sı iki gözlemci içerir:

  • mip::FileProfile::Observer
  • mip::FileHandler::Observer

MIP İlkesi SDK'sı yalnızca tek bir gözlemciye sahiptir:

  • mip::Profile::Observer

MIP Koruması SDK'sının üç gözlemcisi vardır:

  • mip::ProtectionProfile::Observer
  • mip::ProtectionEngine::Observer
  • mip::ProtectionHandler::Observer

Sonraki Adımlar

Çeşitli SDK'lar tarafından gözlemcilerin nasıl uygulandığı ve kullanıldığı hakkında daha fazla bilgi edinin: