OSGi merupakan kependekan dari Open Services Gateway
initiativedan merupakan sebuah modul system dan sercice platform untuk
pemrograman java yang mengimplementasikan komponen model yang komplit dan
dinamik.
Spesifikasi OSGi
OSGi sekarang digunakan dalam aplikasi mencakup telepon
seluler sampai dengan Eclipse IDE (Open Source). Spesifikasi OSGi dikembangkan
oleh para anggota dalam sebuah proses terbuka (open process) dan dibuat
tersedia untuk umum tanpa biaya apapun (free of charge) dibawah lisensi spesifikasi
OSGi (OSGi Specification Licence). OSGiAlliance memiliki program penyesuaian
yang hanya terbuka untuk anggota saja. Pada November 2010, ada tujuh
implementasi framework OSGi. Sebuah halaman terpisah mencantumkan baik
dari tersertifikasi maupun non-sertifikasi implementasi spesifikasi
OSGi, yang meliputi framework OSGi dan spesifikasi OSGi lainnya.
Arsitektur OSGi
Setiap framework yang menerapkan standar
OSGi, menyediakan suatu lingkungan untuk modularisasi aplikasi ke dalam
kumpulan yang lebih kecil. Setiap kumpulan adalah berhubungan erat, koleksi
class yang dapat dimuat secara dinamis, jars, dan file-file konfigurasi yang
secara eksplisit menyatakan dependensi eksternal mereka (jika ada).
Frameworknya dibagi secara
konseptual dalam bidang-bidang berikut:
Bundles adalah komponen jar normal
dengan header yang lebih jelas.
Services
Layanan yang menghubungkan lapisan
kumpulan (bundle / bundel) dalam cara yang dinamis dengan menawarkan model
cetak-temukan-ikat untuk antar muka sederhana Java lama atau objek sederhana
java lama.
Services Registry
API untuk jasa manajemen (Service Registration,
Service Tracker dan Service Reference).
Life-Cycle
API untuk manajemen siklus hidup
untuk (instal, start, stop, update, dan uninstall) bundel.
Modules
Lapisan yang mendefinisikan
enkapsulasi dan deklarasi dependensi (bagaimana sebuah kumpulan (bundle /
bundle) dapat mengimpor dan mengekspor kode).
Security
Layer yang menangani aspek keamanan
dengan membatasi fungsionalitas kumpulan untuk kemampuan yang sebelumnya telah
didefinisikan.
Execution Environment
Mendefinisikan metode dan kelas apa
yang tersedia dalam platform tertentu. Tidak ada daftar tetap eksekusi
lingkungan, karena dapat berubah seiring Java Community Process menciptakan
versi dan edisi dari Java. Namun, set berikut saat ini didukung oleh
sebagian besar OSGi implementasi:
- CDC-1.0/Foundation-1.0
- CDC-1.1/Foundation-1.1
- OSGi/Minimum-1.0
- OSGi/Minimum-1.1
- JRE-1.1 JRE-1.1
- From J2SE-1.2 up to
J2SE-1.6
Tidak ada komentar:
Posting Komentar