It is currently 7 June 2025, 19:34 Advanced search

custom directory comune e build.xml parametrizzabile

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

custom directory comune e build.xml parametrizzabile

Postby C.Zecca » 5 December 2012, 11:32

Sto cercando di "componentizzare" alcune parti di un'applicazione (Si4so). In futuro le componenti saranno utilizzate da altri applicazioni.
L'applicazione attuale utilizza impostazioni grafiche "aziendali" definite nella cartella ./../customRD3_9.5
(la cartella cui si riferiche il path relativo è quella che contiene il .IDP).

Le altre applicazioni e i componenti dovranno utilizzare le stesse impostazioni grafiche "aziendali" ovverola stessa custom directory (./../customRD3_9.5).
Ecco ad esempio le impostazioni per l'applicazione UoCompAppl che raccoglie(rà) alcune componenti.

Image

Ora, il problema è che ./../customRD3_9.5 contiene anche build.xml;
in questo driver per ANT sono definite però alcune proprietà specifiche per applicazione.
Ad esempio

Code: Select all
  <property name="app.name"      value="Si4so"/>
  <property name="app.version"   value="1.4.3"/>
  ...


Dunque impostando altrove / altrimenti alcune proprietà poi il resto del build.xml è (per ora) comune e parametrico e funziona/funzionerà bene per applicazione.

Prima pensata
Separare in una sezione (ad esempio ./appSpecific.build.xm) le impostazioni delle proprietà specifiche per applicazione. L'istruzione include per ANT però non è disponibile per la versione che utilizziamo (1.6.5) (solo per ANT 1.8 o successive).

Seconda pensata
Passare come parametri le impostazioni specifiche di applicazione di In.De
ad esempio
-Dapp.name="Si4so" -Dapp.version="1.4.3"

un po' come mi sarebbe piaciuto per l'opzione -verbose (ad esempio qui cosa succede in Eclipse).

E' possibile? Se sì, come?
Se no, come posso risolvere il problema di parametrizzare alcune proprietà di build.xml (di fatto solo quelle di intestazione (header) lasciando condiviso tutto il resto del build.xml) in modo specifico per applicazione?
C.Zecca
 
Posts: 347
Joined: 19 May 2011, 12:29

Re: custom directory comune e build.xml parametrizzabile

Postby d.pierangeli » 7 December 2012, 12:05

Abbiamo verificato la situazione: nella directory custom ci sono delle personalizzazioni grafiche ed un file build.xml personalizzato per una applicazione in particolare.

Volendo mettere a fattor comune le personalizzazioni grafiche senza duplicarle nelle varie custom è necessario creare un Template specifico dentro la cartella Themes di Inde ed utilizzare quello; lasciando nelle varie custom sono i build.xml dell'applicazione.

Al momento di cambio della versione è però necessario aggiornare il template personalizzato verificando le differenze con quello standard.
User avatar
d.pierangeli
Pro Gamma
Pro Gamma
 
Posts: 8129
Joined: 30 September 2010, 15:35

Re: custom directory comune e build.xml parametrizzabile

Postby C.Zecca » 10 December 2012, 10:11

Grazie Diego. Mi ero collegato proprio per condividere la soluzione che mi avevi illustrata.
Utilizzavamo il tema siattle più questa cartella custom.

Come suggerivi ho duplicato il tema seattle in seattle_finmatica in questo caso (1)
$ID\Template\Theme\seattle --> $ID\Template\Theme\seattle_finmatica

Quindi ho spostato file e sottocartelle della custom directory in seattle_finmatica

Nella nuova cartella custom è rimasto solo il file build.xml opportunamente aggiornato e quanto di veramente specifico di applicazione, ovvero le cartelle
o - images
o - web
con i loro contenuti.

Allora, ci siamo, è stato ricreato il nuovo contesto in locale ma... ci sono alcune differenze grafiche.
Qui due esempi:
a sinistra come appariva l'interfaccia prima ("vecchio" sistema)
a destra come appare l'interfaccia ora (sistema con "nuovi" tema, custom, build.xml, etc.).

1 - differente icone per il pulsante di apertura-chiusura dei menù
Image

2 - presenza di una casella di testo Cmd nella caption di applicazione nella "nuova" versione.
Image

Poi c'è una differenza anche nella grafica di animazione in avvio. Non è escluso che ci siano altre differenze in altri punti dell'interfaccia.

L'operazione non è quindi così semplice.
Ora potrei eseguire un analisi topologica tra i due contesti generati e capire le differenze sui file e/o riesaminare passo a passo il buid.xml che sono operazioni piuttosto costose.

Suggerimenti?

Note:
(1)
$ID rappresenta la cartella di installazione della versione in uso (corrente) di In.De, nel mio caso C:\Programmi\INDE\CURRENT
C.Zecca
 
Posts: 347
Joined: 19 May 2011, 12:29


Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: Google [Bot] and 47 guests