Hallo ich möchte mir ein kleines, eigenes Framework schreiben.
Darin möchte ich ein Pluginsystem realisieren, in welchem die Plugins sich ihre screens, bzw. actions registrieren müssen, parameter für eine Registrierung, wären:
- Name des screens, bzw. action
- Pfad zur jeweiligen Datei, in der der code liegt.
- Name der Klasse, welche den screen, bzw. action implementiert.
- Und ein permissionkey, über welchen der Nutzer mindestens verfügen muss.
Dazu habe ich jetzt 3 Ideen:
1. Ich habe eine standardisierte php-Datei mit einer standardisierten Klasse, welche Registrierungsmethoden implementiert z.b. Plugin.php:
2. Ich habe wieder eine standardisierte Datei, diesmal aber alles im xml Format.
3. Ich habe im Plugin ein installscript, welches alle Registrierungen in einer Datenbank vornimmt.
So welches der 3 Konzepte, oder ein 4. an das ich noch nicht gedacht habe, ist das schnellste?
Darin möchte ich ein Pluginsystem realisieren, in welchem die Plugins sich ihre screens, bzw. actions registrieren müssen, parameter für eine Registrierung, wären:
- Name des screens, bzw. action
- Pfad zur jeweiligen Datei, in der der code liegt.
- Name der Klasse, welche den screen, bzw. action implementiert.
- Und ein permissionkey, über welchen der Nutzer mindestens verfügen muss.
Dazu habe ich jetzt 3 Ideen:
1. Ich habe eine standardisierte php-Datei mit einer standardisierten Klasse, welche Registrierungsmethoden implementiert z.b. Plugin.php:
PHP-Code:
Plugin extends BasePlugin {
function init() {
registerScreen("Index", "/screens/index.php", "Index", "IsUser");
registerScreen("Login", "/screens/login.php", "Login", "IsGuest");
registerAction("Logout", "/actions/logout.php", "Logout", "IsUser");
}
}
Code:
<plugin> <screen name="Index" file="/screens/index.php" class="Index" permussion="IsUser" /> <screen name="Login" file="/screens/login.php" class="Login" permussion="IsGuest" /> <action name="Logout" file="/actions/logout.php" class="Logout" permussion="IsUser" /> </plugin>
So welches der 3 Konzepte, oder ein 4. an das ich noch nicht gedacht habe, ist das schnellste?
Kommentar