Konfigurasi
Seluruh file konfigurasi O2System Framework terletak di direktori app/Config
. Untuk memudahkan pengembangan pada setiap file-file konfigurasi default yang ada pada O2System Framework di dalamnya sudah memiliki inline-documentation. Anda dapat membacanya langsung agar mengerti mengenai tujuan dari masing-masing konfigurasi tersebut.
Strict Mode
Fitur strict mode merupakan fitur terbaru yang dari PHP 7.0+, namun untuk menggunakannya pastikan semua library yang anda gunakan sudah mendukungnya.
Untuk mengubahnya anda harus mengubah file Front-Controller dari aplikasi anda yang terdapat di folder public dari project aplikasi anda.
Pada line 16 dari file tersebut terdapat source code mengenai strict mode, un-comment source code tersebut untuk mengaktifkannya.
Konfigurasi Environment
Dalam pembuatan project aplikasi selalu berhubungan erat dengan environment. Tahapan dalam environment pada umumnya terbagi dalam 3 jenis:
DEVELOPMENT Tahap yang menyatakan aplikasi masih dalam tahap pengembangan. Dalam tahap ini pesan Error dan Exception dimunculkan.
TESTING Tahap yang menyatakan aplikasi sudah dalam tahap percobaan. Dalam tahap ini hanya pesan error saja yang masih dimunculkan.
PRODUCTION Tahap yang menyatakan aplikasi sudah dalam tahap produksi atau sering disebut dengan istilah sudah GO-LIVE.
Untuk mengubah status tahap pengembangan aplikasi anda. Anda harus mengubah file Front-Controller dari aplikasi anda yang terdapat di folder public dari project aplikasi anda.
Pada line 40 dari file tersebut terdapat source code yang men-definisikan ENVIRONMENT Stage dari project aplikasi anda. Ubahlah sesuai dengan tahap dari project aplikasi anda.
Di O2System Framework anda akan menemukan sebuah Environment baru yang disebut dengan ENVIRONMENT Debug Stage. Environment Debug Stage merupakan sebuah fasilitas khusus untuk Developer agar dapat tetap melakukan debugging walaupun Environment Stage dari project aplikasi anda sudah dalam tahap PRODUCTION.
Dengan fasilitas ini akses PUBLIC akan tetap dapat menggunakan aplikasi anda dengan tanpa adanya pesan error yang muncul pada aplikasi anda, namun sebaliknya jika anda yang melakukan akses sebagai DEVELOPER atau TESTER anda akan tetap dapat melakukan debugging.
ENVIRONMENT Debug Stage terbagi dalam 3 jenis yang hampir sama kegunaannya dengan ENVIRONMENT Stage.
DEVELOPER Tahap ini merupakan tahap dimana Error dan Exception akan selalu muncul pada proses debugging.
TESTER Tahap ini merupakan tahap dimana hanya pesan Error saja yang akan muncul pada proses debugging.
PUBLIC Tahap ini merupakan tahap yang bersifat inheritance dari ENVIRONMENT Stage dari aplikasi anda.
Untuk menggunakan fasilitas tersebut ada 2 konfigurasi yang harus anda lakukan yaitu menentukan tahap ENVIRONMENT Debug Stage dari aplikasi anda dan memasukkan alamat IP Address debugging anda.
Mengubah Debug Stage Pada line 47 dari file Front-Controller aplikasi anda terdapat source code yang men-definisikan ENVIRONMENT Debug Stage dari project aplikasi anda. Ubahlah sesuai dengan tahap dari project aplikasi anda.
Mengisi alamat IP Address Anda diharuskan mengisi alamat Public IP Address dari tempat anda melakukan akses pada aplikasi anda pada file konfigurasi global dari project aplikasi anda.
Pada line 92 dari file tersebut terdapat source code yang mengatur konfigurasi dari alamat Debug IP Address project aplikasi anda.
Anda dapat memasukkan alamat IP Address lebih dari satu. IP Address yang dimasukkan harus ber-format IP Address v4.
Memisahkan Konfigurasi Berdasarkan Environment
Project aplikasi anda dapat memiliki konfigurasi-konfigurasi yang berbeda berdasarkan ENVIRONMENT.
Untuk melakukannya anda harus membuat atau men-duplikasi file konfigurasi yang ingin anda sesuaikan secara spesifik berdasarkan tahap dari ENVIRONMENT Stage anda. Tempatkan file tersebut dalam nama direktori sesuai tahap ENVIRONMENT Stage anda.
Memisahkan Konfigurasi Berdasarkan Module
Salah satu keunikan dari O2System Framework adalah anda juga dapat memiliki konfigurasi-konfigurasi yang berbeda bukan hanya berdasarkan ENVIRONMENT saja namun juga dapat secara spesifik pada setiap MODULE yang terdapat dalam project aplikasi anda.
Untuk melakukannya anda harus membuat atau men-duplikasi file konfigurasi yang ingin anda sesuaikan secara spesifik berdasarkan tahap dari ENVIRONMENT Stage anda dan MODULE dari aplikasi anda. Tempatkan file tersebut dalam nama direktori sesuai tahap ENVIRONMENT Stage anda dan pada direktori MODULE yang ingin anda sesuaikan.
Berdasarkan MODULE
Berdasarkan MODULE dan ENVIRONMENT Stage
Membuat File Konfigurasi Baru
Ketika kita membuat class PHP library baru terkadang kita memerlukan file konfigurasi untuk lebih memudahkan serta untuk menghindari pengubahan langsung pada class-class PHP yang kita buat. Caranya sangatlah mudah untuk membuat file konfigurasi baru tersebut.
Sebagai contoh kita akan membuah file konfigurasi untuk sebuah class PHP library yang kita namakan Example.
Simpan source code diatas dengan filename
app/Config/Example.php
Beberapa hal penting yang perlu diperhatikan adalah:
Penulisan nama variable pada file konfigurasi diharuskan dengan format penulisan berupa lowercase dari nama filename seperti contoh diatas.
Nilai variable dari file konfigurasi diharuskan ber-format array atau merupakan object dari class O2System\Kernel\Datastructures\Config atau turunannya.
Tips and Tricks Anda juga dapat membuat file konfigurasi baru dengan menggunakan console, dengan perintah
$ php o2system make/config --filename=NamaFile
Memanggil File Konfigurasi Baru
Setelah kita selesai membuat file konfigurasi seperti pada point sebelumnya, selanjutnya kita akan memanggil file config tersebut pada class PHP library yang akan kita buat.
Seperti yang sudah diutarakan sebelumnya kita akan memanggilnya pada constructor class php dengan nama class Example.
Simpan class PHP diatas dengan filename
app/Libraries/Example.php
Trait Config Collector
Seringkali dalam class PHP library yang kita buat, memerlukan adanya beberapa metode-metode yang dipergunakan untuk sebagai setter dan getter pada konfigurasi class yang kita buat tersebut.
Dalam kasus yang berhubungan dengan konfigurasi di O2System Framework Standard PHP Libraries (SPL) sudah terdapat Trait Config Collector. Seperti pada contoh kode sebelumnya terdapat perintah
Penempatan keyword use harus ditempatkan didalam class.
Last updated