[1.14] [GORM] modellierungserweiterung

Dieser Bereich dient dazu, neue Features zu diskutieren und für die Entwicklung zu dokumentieren. // This area is dedicated to new features including proposals and documentation.
Benutzeravatar
Screeze
Beiträge: 1920
Registriert: 05.08.2009, 09:49:04
Kontaktdaten:

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Screeze » 31.03.2011, 13:58:45

dr.e. hat geschrieben:Das wird sicher funktionieren, ändert aber die Tatsache nicht, dass die Verwendung "manuell" aufgelöst werden muss.

@Ralf: wie war beim Konzept der Erweiterung das Thema Abhängigkeiten geplant? Ich meine, wir hatten da über explizite Auflösung durch import() gesprochen. Oder?
Jein - wir hatten darüber gesprochen, dass die Objekte wenn sie erzeugt werden natürlich importiert werden, das ist auch der Fall, aber wenn Objekte ohne den GORM aus der Session/einem Cache geladen werden sollen, kann der GORM da nichts importieren, weil er garnichts von der Aktion mitbekommt.

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Megger » 31.03.2011, 14:19:11

Muss noch ein bisschen was umstellen bei mir, da ich zwischendurch mal ein Objekt in ein SESSIONSINGLETON Model ablege und beim erneuten Arbeiten damit habe ich natürlich wieder das Problem mit dem Incomplete Class. Aber das werde ich einfach ein bisschen umstellen und nur die ID des Objekts speichern (ist sowieso besser) und dann bei Bedarf das Objekt aus der Datenbank laden
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Benutzeravatar
dr.e.
Administrator
Beiträge: 4533
Registriert: 04.11.2007, 16:13:53

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von dr.e. » 01.04.2011, 09:55:08

Jein - wir hatten darüber gesprochen, dass die Objekte wenn sie erzeugt werden natürlich importiert werden, das ist auch der Fall, aber wenn Objekte ohne den GORM aus der Session/einem Cache geladen werden sollen, kann der GORM da nichts importieren, weil er garnichts von der Aktion mitbekommt.
Dafür würde ich jedoch eine Komponente innerhalb der Software erwarten, die das abstrahiert, bzw. die Abhängigkeiten auflöst. Innerhalb dieser Komponente sollte dann auch ein import() stattfinden.

@Tobi:
Das gefällt mir so nicht 100%-ig. Rein aus Typensicherheits-Gedanken heraus solltest du schon die Objekte speichern. Alles andere wäre ja ein Rückschritt.

Wie sieht denn vom Prozess das Laden deiner Objekte aus dem Cache aus?
Viele Grüße,
Christian

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Megger » 01.04.2011, 10:21:09

Vorher hatte ich einfach den Cache Manager geladen und dann per SimpleCacheKey die entsprechenden Einträge geladen.
Inzwischen beziehe ich vorher den GORM und importiere damit die entsprechenden Service Objects

Code: Alles auswählen

$cMF = &$this->getServiceObject('tools::cache', 'CacheManagerFabric');
$cM = $cMF->getCacheManager('TimeManager');
$cacheEntryList = $cM->getFromCache(new SimpleCacheKey('EntryList'));
if($cacheEntryList!==null) {
    return $cacheEntryList;
}
 
Das funktioniert natürlich beim holen von Objekten aus einem SESSIONSINGLETON Model nicht, da müsste ich ja in einer Action oder so erstmal die entsprechenden Service Objects importieren, aber das will ich nicht, da nicht bei jedem Request die Objekte gebraucht werden.
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Benutzeravatar
Screeze
Beiträge: 1920
Registriert: 05.08.2009, 09:49:04
Kontaktdaten:

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Screeze » 01.04.2011, 11:55:53

Dafür würde ich jedoch eine Komponente innerhalb der Software erwarten, die das abstrahiert, bzw. die Abhängigkeiten auflöst. Innerhalb dieser Komponente sollte dann auch ein import() stattfinden.
Wie meinst du das?

Benutzeravatar
dr.e.
Administrator
Beiträge: 4533
Registriert: 04.11.2007, 16:13:53

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von dr.e. » 01.04.2011, 22:48:09

Screeze hat geschrieben:
Dafür würde ich jedoch eine Komponente innerhalb der Software erwarten, die das abstrahiert, bzw. die Abhängigkeiten auflöst. Innerhalb dieser Komponente sollte dann auch ein import() stattfinden.
Wie meinst du das?
Sofern das eine Front-Controller basierte Anwendung ist, würde ich konzeptionell erwarten, dass ich irgendwo eine Action habe, die den State der Applikation herstellt. Das kann aus der Session sein, aus einem Cache oder aus welcher Quelle auch immer. Diese importiert die Klassen und läd die Inhalte.

Sofern wir nicht von einer Action sprechen, würde ich trotzdem erwarten, dass - schon alleine aus Gründen der Austauschbarkeit - eine Komponente (man kann sie nun Service oder Manager nennen) das Abholen der Daten für dich übernimmt. Diesen Service nutzt du dann in deiner Applikation um den Krempel zu laden. Dort und nur dort wird dann die Abhängigkeit aufgelöst - ein Wrapper sozusagen.
Das funktioniert natürlich beim holen von Objekten aus einem SESSIONSINGLETON Model nicht, da müsste ich ja in einer Action oder so erstmal die entsprechenden Service Objects importieren, aber das will ich nicht, da nicht bei jedem Request die Objekte gebraucht werden.
Du kannst doch die Klassen auch innerhalb einer Methode on-demand importieren. Das muss ja nicht ausserhalb einer Klasse sein...
Viele Grüße,
Christian

Benutzeravatar
Screeze
Beiträge: 1920
Registriert: 05.08.2009, 09:49:04
Kontaktdaten:

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Screeze » 01.04.2011, 22:51:38

Ist dann aber keine allgemeingültige Funktion, die dem GORM fehlt, richtig?

Benutzeravatar
dr.e.
Administrator
Beiträge: 4533
Registriert: 04.11.2007, 16:13:53

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von dr.e. » 01.04.2011, 22:57:44

Darauf wollte ich hinaus. IMHO ist das einfach eine Sprach-Gegebenheit. In JAVA ist das ja auch nicht anders. Dein Objekt wird serialisiert, denn du Serializable implementierst, sofern du es deserialisieren und verwenden möchtest muss es per

Code: Alles auswählen

import foo.bar.MyObject
eingebunden sein, sonst wirft der Compiler eine ClassNotFoundException. Daher finde ich es auch nicht so schln, dem BaseMapper eine solche Methode mitzugeben. Sorry Tobi! :)
Viele Grüße,
Christian

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Megger » 01.04.2011, 23:36:55

Dann schiebe ich es halt bei mir in den ApplicationManager *bätsch* :lol:

Edit:
Habe nämlich keine Lust immer zu schauen wie der namespace ist :roll:
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Benutzeravatar
dr.e.
Administrator
Beiträge: 4533
Registriert: 04.11.2007, 16:13:53

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von dr.e. » 04.04.2011, 20:17:49

Hi Tobi,

ich versteh' dich ja, so isses nicht! :) Aber es sollte irgendwie trotzdem gewrappt werden um die Abhängigkeiten vor den restlichen Komponenten deiner Software zu verstecken.
Viele Grüße,
Christian

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Megger » 06.04.2011, 13:54:13

Im BaseMapper war es einfacher mit der Funktion, da ich leichter auf die config zugriff hatte. In meinem ApplicationManager werde ich den Zugriff fest verdrahten.
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Benutzeravatar
dr.e.
Administrator
Beiträge: 4533
Registriert: 04.11.2007, 16:13:53

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von dr.e. » 06.04.2011, 21:53:06

Alles klar! :)
Viele Grüße,
Christian

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Megger » 11.04.2011, 11:04:10

Ich habe im GenericDomainObject "objectName", "properties" und "relatedObjects" mal auf protected geändert, wegen den Problemen beim serialisieren. Ist als Commit #1293 eingecheckt
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Benutzeravatar
dr.e.
Administrator
Beiträge: 4533
Registriert: 04.11.2007, 16:13:53

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von dr.e. » 11.04.2011, 23:02:38

Alles klar, danke!
Viele Grüße,
Christian

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [1.14] [GORM] modellierungserweiterung

Beitrag von Megger » 12.04.2011, 15:04:14

http://de2.php.net/manual/de/var.config ... lback-func
Finde ich interessant

Ist aber natürlich nicht für alle zu gebrauchen, da manche bei ihren Anbietern nichts verändern dürfen
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Gesperrt

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast