Ben (. Adınızı, geçmek, e-posta, vb) kullanıcı verilerini toplamak hangi bir web arayüzü var ve arka uç 3 diğer sistemlere (systema, SystemB, SystemC) içine karşılığı bu verileri vardır.
Provizyon 3 farklı API'ler her sistem (A, B ve C) için bir tarafından yapılıyor.
Backend benim şimdiki tasarım şuna benzer:
interface ProvisionData
{
public function createUser();
public function deleteUser();
public function changePassword();
}
class SystemA_API_wrapper implements ProvisionData
{
public function createUser(){ ... }
public function deleteUser(){ ... }
public function changePassword(){ ... }
}
class SystemB_API_wrapper implements ProvisionData
{
public function createUser(){ ... }
public function deleteUser(){ ... }
public function changePassword(){ ... }
}
class SystemC_API_wrapper implements ProvisionData
{
public function createUser(){ ... }
public function deleteUser(){ ... }
public function changePassword(){ ... }
}
Sistem * _API_wrapper her farklı CREATEUSER uygulanmasını () (ve dinlenme) fonksiyonları vardır.
Ben web arayüzünden toplanan verilerle beslemek proxy sınıfının bir tür yarattık Önyüzde .. Bu gibi görünüyor:
class provisionProxy
{
public $sA = null;
public $sB = null;
public $sC = null;
//constructor instantiates all System*_API_wrapper objects
public function __construct() {
$sA = new SystemA_API_wrapper();
$sB = new SystemB_API_wrapper();
$sC = new SystemC_API_wrapper();
}
// proxy function deleteUser calls deleteUser() of each of
// our APIs
public function deleteUser($username, $password) {
$this->sA->deleteUser($username, $password);
$this->sB->deleteUser($username, $password);
$this->sC->deleteUser($username, $password);
}
}
Herkes herhangi bir öneri ya da daha iyi bir uygulama var mı?
(Ben zaten aynı soruyu gönderdim ama teknik sorunlar nedeniyle benim eski hesabınıza giriş yapamıyorum, bu yüzden soru revize edilmiş ve yeni bir hesap altında tekrar yayınlanmıştır Orijinal soru burada bulunabilir:. {[(0)] } - teşekkürler)