Mendeklarasikan Kelas Asosiasi
Kelas asosiasi adalah jenis kelas khusus yang mendefinisikan hubungan antara dua kelas lain.
Prosedur berikut menjelaskan cara membuat kelas asosiasi menggunakan kode MOF.
Membuat kelas asosiasi menggunakan kode MOF
Tetapkan kualifikasi Asosiasi ke kelas Anda.
Meskipun dimungkinkan untuk membuat kelas dengan referensi ke objek atau kelas lain, menggunakan kualifikasi Asosiasi tidak hanya memperjelas bahwa kelas Anda adalah kelas asosiasi, tetapi juga, sebagai praktik terbaik, memastikan bahwa kelas Anda sepenuhnya berfungsi sebagai kelas asosiasi.
Buat dua referensi dalam kelas yang menjelaskan dua instans objek yang ingin Anda kaitkan bersama-sama menggunakan jenis ref.
Referensi mengikat dua objek dalam asosiasi dengan berisi jalur ke objek. Meskipun tidak diperlukan, gunakan properti referensi sebagai properti utama juga.
Meskipun Anda dapat membuat referensi yang sepenuhnya berkualitas atau relatif terhadap namespace, WMI hanya memiliki dukungan terbatas untuk referensi lintas namespace. Secara khusus, hanya objek yang ditentukan secara statis yang dapat saling mereferensikan di seluruh batas namespace; objek yang didukung secara dinamis tidak dapat saling mereferensikan.
Jika perlu, gunakan kualifikasi HasClassRef dan Classref bersama dengan tipe ref objek untuk mereferensikan kelas.
WMI mendukung memiliki satu titik referensi ke instans, dan titik referensi objek lainnya ke kelas. Dalam hal ini, kelas asosiasi Anda akan menjelaskan asosiasi yang mengikat instans ke kelas.
Contoh kode berikut menguraikan sintaks untuk menggunakan HasClassRef dan Classref dengan objek jenis .
[HasClassRefs, Association] class SomeAssocClass { [key, classref{ "MyEndpoint", "OtherContainer" }] object ref ep1; [key] object ref ep2; };
Dalam contoh sebelumnya, referensi ep1 dapat merujuk ke definisi untuk kelas MyEndpoint atau kelas OtherContainer. Perhatikan bahwa meskipun Anda harus menetapkan tipe data kelas acuan secara lemah, Anda tidak dapat menetapkan tipe data kualifikasi Classref itu sendiri; jika dilakukan, ini akan sangat mengurangi efisiensi mesin permintaan WMI. Pengetikan yang lemah membuat referensi yang dapat berisi jenis data apa pun dengan menggunakan objek kata kunci dan jenis data ref. Agar berhasil menggunakan HasClassRef, Anda harus mengatur sifat kualifikasi yang relevan agar tersebar ke semua instans dan subkelas.
Buat properti lain jika diperlukan.
Contoh kode berikut menunjukkan bahwa WMI saat ini tidak mendukung kelas asosiasi yang memiliki kurang atau lebih dari dua properti referensi.
[Association : ToInstance] class MyAssocClass { ClassX ref PathToClassX ; ClassY ref PathToClassY ; };
Setelah selesai, kompilasi kode MOF Anda dengan pengkompilasi MOF.
Untuk informasi selengkapnya, lihat Mengkompilasi File MOF.
Contoh kode di Langkah 3 menentukan kelas asosiasi MyAssocClass. Kelas MyAssocClass mendefinisikan hubungan antara ClassX dan ClassY. Properti PathToClassX dan PathToClassY berisi jalur objek ke instans kelas yang akan dikaitkan. Kata kunci ToInstance adalah salah satu dari beberapa penanda jenis yang didefinisikan WMI untuk memberikan informasi tentang penggunaan sebuah pengualifikasi. Kata kunci ToInstance menunjukkan bahwa WMI harus menyebarluaskan penentu Asosiasi pada semua instans dari kelas asosiasi. Dengan memeriksa kualifikasi instans ini, perangkat lunak klien dapat menentukan bahwa instans termasuk dalam kelas asosiasi, tanpa harus mengambil definisi kelas untuk mencari kualifikasi Asosiasi. Untuk informasi selengkapnya, lihat Menjelaskan Kualifikasi Dengan Varian Kualifikasi dan Referensi .
Topik terkait