Code de base

Les namespaces doivent être crée en suivant le principe utilisé en JAVA pour la gestion des packages. Le dossier « src » est le dossier racine des classes.

Base code

Donc à l’intérieur du dossier « src » tout sous-dossier sera inclut dans le namespace.

- La classe "MyApp" qui se trouve dans le dossier "myapp" aura pour namespace "myapp". Le nom complet de la classe sera "\myapp\MyApp“.

- La classe "AppSetup" qui se trouve dans le dossier "myapp/setup" aura pour namespace "myapp\setup". Le nom complet de la classe sera "\myapp\setup\AppSetup“.

1. Classe principale de l’application

[pastacode lang=”php” manual=”%3C%3Fphp%0Anamespace%20myapp%3B%0A%0Ause%20muuska%5Cproject%5CAbstractApplication%3B%0Ause%20muuska%5Cutil%5CApp%3B%0Ause%20muuska%5Cproject%5Cconstants%5CSubAppName%3B%0A%0Aclass%20MyApp%20extends%20AbstractApplication%0A%7B%0A%20%20%20%20protected%20function%20registerMainDAOSources()%7B%0A%20%20%20%20%20%20%20%20parent%3A%3AregisterMainDAOSources()%3B%0A%20%20%20%20%20%20%20%20%24this-%3EregisterDaoSource(App%3A%3Adaos()-%3EcreatePDOSourceFromConfiguration())%3B%0A%20%20%20%20%7D%0A%20%20%20%20%0A%20%20%20%20protected%20function%20createSubProject(%24subAppName)%7B%0A%20%20%20%20%20%20%20%20if(%24subAppName%20%3D%3D%3D%20SubAppName%3A%3AFRONT_OFFICE)%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20new%20FrontSubApplication(%24subAppName%2C%20%24this)%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%20%20%0A%20%20%20%20protected%20function%20createAppSetup()%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20return%20new%20%5Cmyapp%5Csetup%5CAppSetup(%24this)%3B%0A%20%20%20%20%7D%0A%7D%0A” message=”Myapp.php” highlight=”” provider=”manual”/]

 

a. La methode registerMainDAOSources

Permet d’enregistrer les sources d’accès aux données disponibles.

b. La méthode createSubProject

Permet de créer l’instance de la sous application.

c. La méthode createAppSetup

Permet de créer le setup de l’application.

 

2. La classe du setup

[pastacode lang=”php” manual=”%3C%3Fphp%0Anamespace%20myapp%5Csetup%3B%0A%0Ause%20muuska%5Cproject%5Csetup%5CAbstractProjectSetup%3B%0A%0Aclass%20AppSetup%20extends%20AbstractProjectSetup%0A%7B%0A%20%20%20%20public%20function%20__construct(%5Cmuuska%5Cproject%5CApplication%20%24application)%7B%0A%20%20%20%20%20%20%20%20%24this-%3Eproject%20%3D%20%24application%3B%0A%20%20%20%20%7D%0A%7D%0A” message=”AppSetup.php” highlight=”” provider=”manual”/]

 

3. La classe de la sous application

 

[pastacode lang=”php” manual=”%3C%3Fphp%0Anamespace%20myapp%3B%0A%0Ause%20muuska%5Cproject%5CAbstractSubApplication%3B%0A%0Aclass%20FrontSubApplication%20extends%20AbstractSubApplication%0A%7B%0A%20%20%20%20%0A%7D” message=”FrontSubApplication.php” highlight=”” provider=”manual”/]