Mendeklarasikan Kelas Asosiasi
Kelas asosiasi adalah jenis kelas khusus yang mendefinisikan hubungan antara dua kelas lainnya.
Prosedur berikut menjelaskan cara membuat kelas asosiasi menggunakan kode MOF.
Untuk membuat kelas asosiasi menggunakan kode MOF
Tetapkan kualifikasi Asosiasi ke kelas Anda.
Meskipun dimungkinkan untuk membuat kelas dengan referensi ke objek atau kelas, menggunakan kualifikasi Asosiasi tidak hanya memperjelas bahwa kelas Anda adalah kelas asosiasi, tetapi, sebagai praktik terbaik, memastikan bahwa kelas Anda berfungsi penuh sebagai kelas asosiasi.
Buat dua referensi dalam kelas yang menjelaskan dua instans objek yang ingin Anda kaitkan bersama 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 memenuhi syarat atau relatif namespace, WMI hanya memiliki dukungan terbatas untuk referensi lintas namespace layanan. 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 jenis ref objek untuk mereferensikan kelas.
WMI mendukung memiliki satu titik referensi ref 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 jenis objek .
[HasClassRefs, Association] class SomeAssocClass { [key, classref{ "MyEndpoint", "OtherContainer" }] object ref ep1; [key] object ref ep2; };
Dalam contoh sebelumnya, referensi ep1 dapat menunjuk ke definisi kelas untuk kelas MyEndpoint atau kelas OtherContainer . Perhatikan bahwa meskipun Anda harus mengetik kelas referensi dengan lemah, Anda tidak dapat mengetikkan kualifikasi Classref itu sendiri dengan lemah; melakukannya akan sangat mengurangi efisiensi mesin kueri WMI. Pengetikan yang lemah adalah membuat referensi yang dapat berisi jenis data apa pun dengan menggunakan kata kunci objek dan jenis data ref . Agar berhasil menggunakan HasClassRef, Anda harus mengatur rasa kualifikasi yang relevan untuk disebarluaskan ke semua instans dan subkelas.
Buat properti lain seperlunya.
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 mendefinisikan 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 bendera rasa yang didefinisikan WMI untuk memberikan informasi tentang penggunaan kualifikasi. Kata kunci ToInstance menunjukkan bahwa WMI harus menyebarluaskan pengualifikasi Asosiasi ke semua instans kelas asosiasi. Dengan memeriksa pengualifikasi 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 Rasa dan Referensi Pengualifikasi.
Topik terkait