Gemeinsame Konfiguration für Plugin und DataService

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.

BBCode ist eingeschaltet
[img] ist eingeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Ansicht erweitern Die letzten Beiträge des Themas: Gemeinsame Konfiguration für Plugin und DataService

von UPollaehne » 25 Mai 2008, 23:19

bodo hat geschrieben:Am einfachsten wäre es wirklich, wenn dein Plugin direkt alles mitliefern würde und ohne Modifikation am TVB klarkommt. Alles andere ist nur gefuddel und führt zu komischen Fehlern.
Ja, wäre einfach, wenn es nur ein Plugin wäre. Es sind aber zwei und damit beginnt das Problem. Bei einem könnte ich alles zusammen packen, bei zweien muss ich dafür sorgen, dass com4j nur einmal da ist.
Musst du das wirklich per Com-Bridge machen? Kann man das nicht eleganter lösen?
Die COM Schnittstelle ist die eleganteste Schnittstelle zum Zugriff auf den DVBViewer. Die Kommandozeile bietet nicht die Hälfte von dem, was ich brauche (kein EPG Abruf, keine Senderliste, etc.). Über Window Messages bekomme ich auch nur die Hälfte der Funktionen.
Früher habe ich mal versucht, die Senderliste aus der Datei auszulesen, in der der DVBViewer sie speichert, das hilft mir aber nicht, wenn ich die aufzunehmenden Sendungen eintragen will (zumal mir nur die COM Schnittstelle sagt, dass eine Sendung aufgrund von Überschneidungen nicht aufgenommen werden kann).
Und bevor jetzt die Frage aufkommt: Nein, die schon vorhandene jcom (ist wohl für den Outlook Im-/Export) benutze ich nur, wenn ich massiv dazu gezwungen werde. Der Unterschied zwischen den beiden ist ungefähr so wie die direkte Benutzung einer Java Klasse (com4j) und der Benutzung einer Klasse über Reflection. Was würdest Du vorziehen?
Da ich aber kein Outlook besitze, kann ich nicht so einfach eine alternative Implementierung dieses Im-/Exporters liefern, was ich ansonsten sofort machen würde um jcom zugunsten von com4j aus der Installation zu kicken.

von bodo » 25 Mai 2008, 22:03

Am einfachsten wäre es wirklich, wenn dein Plugin direkt alles mitliefern würde und ohne Modifikation am TVB klarkommt. Alles andere ist nur gefuddel und führt zu komischen Fehlern.

Musst du das wirklich per Com-Bridge machen? Kann man das nicht eleganter lösen?

von UPollaehne » 25 Mai 2008, 21:57

bodo hat geschrieben:Pfui! Sowas will ich wirklich nich haben. Das ist wieder das übliche Chaos wie bei Java damals mit Xerces und dem Endorsed-Verzeichnis.
<judge-dredd>Ich wusste, dass er das sagen würde</judge-dredd>
Sobald ich beide Plugin zusammen fassen kann, ist mein Interesse an so einem Verzeichnis auch sehr gering geworden, da ich dann eher (so wie bei tvbrowser.jar) alles in ein JAR zusammen fasse.

von bodo » 25 Mai 2008, 21:52

UPollaehne hat geschrieben:Praktisch wäre natürlich auch, wenn die 3.0 ein extra Verzeichnis bietet, in das man systemweit verfügbare JARs legen kann, wobei das natürlich ein zweischneidiges Schwert ist, denn da könnten dann auch JARs landen, die anderen Plugins das Genick brechen.
Pfui! Sowas will ich wirklich nich haben. Das ist wieder das übliche Chaos wie bei Java damals mit Xerces und dem Endorsed-Verzeichnis.

von UPollaehne » 25 Mai 2008, 21:46

Oh, ich sehe schon, ein Workaround ist nötig, da das doch ein wenig länger dauern wird. :)

Spricht etwas dagegen, wenn ich solange eine modifizierte tvbrowser.exe ausliefere, die gleich die nötigen JARs in den System Classpath hängt?
Das sollte launch4j doch auch locker unterstützen, oder?

Praktisch wäre natürlich auch, wenn die 3.0 ein extra Verzeichnis bietet, in das man systemweit verfügbare JARs legen kann, wobei das natürlich ein zweischneidiges Schwert ist, denn da könnten dann auch JARs landen, die anderen Plugins das Genick brechen.

von ds10 » 25 Mai 2008, 21:37

Es wird aber zwischenzeitlich dann kleinere Updates für 2.7 geben, da wir ja nicht 2 Jahre (rein persönliche Schätzung der Dauer der Entwicklung von 3.0) mit den Releases pausieren wollen. ;-)

von bodo » 25 Mai 2008, 21:35

Also bis jetzt ist geplant, direkt nach 2.7 final mit 3.0 anzufangen. Da wir uns da aber einen etwas größeren Umbau vorgenommen haben, dauert das dann bestimmt, bis das fertig wird.

von UPollaehne » 25 Mai 2008, 21:33

bodo hat geschrieben:Ne, sowas geht nicht.
Das war genau das, was ich nicht hören wollte. :P
Dann muss ich mir für die Zeit bis zur 3.0 etwas anderes ausdenken, denn die Daten um die es geht (Senderliste des DVBViewers) kann ich nicht für beide Plugins einzeln holen (das dauert mal locker über 10 Sekunden).
Wir wollen aber in 3.0 das Plugin-System umbauen, so das es dann auch möglich wird, das ein Plugin Daten und GUI-Krams gleichzeitig liefern kann.

Super, ist zwischen 2.7 und 3.0 noch ein 2.8 und 2.9 geplant, oder geht es nach der 2.7 Release auf die 3.0 zu?

von bodo » 25 Mai 2008, 21:08

Ne, sowas geht nicht.

Wir wollen aber in 3.0 das Plugin-System umbauen, so das es dann auch möglich wird, das ein Plugin Daten und GUI-Krams gleichzeitig liefern kann.

Gemeinsame Konfiguration für Plugin und DataService

von UPollaehne » 25 Mai 2008, 21:01

Hi,

Ich habe hier zwei Plugins, eines davon ist ein DataService.
Beide benötigen gemeinsame Konfigurationsdaten.

Wie kann ich das realisieren, denn die beiden können ja nicht direkt miteinander kommunizieren und gemeinsame Verzeichnisse haben sie auch nicht (ausser dem AbstractTvDataService.getPluginManager().getTvBrowserSettings().getTvBrowserUserHome()).

Gibt es eigentlich noch eine andere Möglichkeit eine zusätzliche Bibliothek nur einmal in der VM zu laden als sie im System Classpath zu verankern (soweit ich das sehe, wird ja jedes Plugin mit einem eigenen Classloader geladen)?

Nach oben