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 GÇ ile sonuçlanabilecek tüm işlemler zaman uyumsuz 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, ve std::futurearacılığıyla std::promise olay bildirimi gözlemci desenini uygular.

Sınıfa özgü her gözlemci, zaman uyumsuz işlemin sonucu için bir dizi başarı ve hata/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:

  • aracılığıyla FileProfile::AddEngineAsyncprofile yeni bir altyapı ekleyebilir.
  • aracılığıyla bir altyapıyı profilden FileProfile::UnloadEngineAsynckaldırabilir.

Zaman uyumsuz işlem başına iki Observer işlev uygulandığından, ile FileProfileilişkili dört Observer 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: