|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectde.frame4j.util.App
UpdNow
public class UpdNow
Aktualisieren einer .xml-Info-Datei für XSLT.
XSLT und XPath kennen (leider Stand Februar 2006) keine Funktionen, die
Systeminformationen oder auch nur das aktuelle Datum liefern. Der
portabelste Weg, diesen Mangel zu beheben, ist das Ablegen dieser
Informationen in einer .xml-Datei an allen benötigten Stellen.
So können diese Informationen beispielsweise als Datei "now.xml"
im selben Verzeichnis wie das transformierende XSLT style sheet abgelegt
werden. Von diesem aus wäre das Aktualisierungsdatum in der vergleich- und
sortierbaren Form "20060216" dann mit
xsl:variable name="nowDateSort" \
select="document('now.xml')//nowDateSort"
auslesbar, und (im Beispiel) in einer Variable namens nowDateSort
hinterlegbar und so für Datumsvergleiche und datumsbasierte Auswahlen
etc. beliebig verwertbar.
Diese Anwendung erstellt bzw. aktualisiert und verbreitet eine
solche Datei oder deren zwei. Als Ziel(e) können Dateien oder
Verzeichnisse angegeben werden. Bei Angabe von Verzeichnissen ist der
zugehörige Dateiname "now.xml". Die so angegebene Dateien
können auch auf Netzlaufwerken
("\\Pd310s\wichtel-intra\now.xml" z.B.) liegen. Sie werden
ohne Nachfrage überschrieben, falls sie bereits existieren.
Die Aktualisierung kann einmalig sofort oder zeitgesteuert mit
Startzeit und
Wiederholrate und optional zusätzlich
sofort erfolgen.
Inhalt, Verbreitungswege und Aktualisierung sind über
Kommandozeilenparameter und .properties-Dateien steuerbar.
Versionshinweis: V02.04 erstellt den XML-Inhalt mit über Properties
variablen Seitenklammern aber sonst festen Inhalten (Tags).
Diese noch einfache beta-Version sorgt im Dauerbetrieb für die
Aktualisierung von now.xml.
Hinweis: Zu dieser Anwendung gehört (als integraler)
Bestandteil eine Properties-Datei namens UpdNow.properties. Zu ihrer
Platzierung und
Bedeutung siehe die
Hinweise in der
Beschreibung des Pakets
de.a_weinert.
©
Copyright 2006 Albrecht Weinert
| Field Summary | |
|---|---|
String |
byTool
Zeile für Werkzeugangabe. |
boolean |
insertHour
Stunde der Aktualisierung einfügen. |
String |
pageBodyStart
Start des Seiteninhalts. |
String |
pageEnd
Ende der Seite. |
String |
pageStart
Start der Seite. |
protected long |
rate
Die Periode der Aktualisierung (in Millisekunden). |
boolean |
runAtStart
Bei Start der Anwendung sofort einmal aktualisieren. |
String |
startTime
Startzeit der periodischen Aktualisierung. |
String |
ziel
Der Name der Zieldatei oder des Zielverzeichnisses. |
String |
ziel2
Der Name der zweiten Zieldatei oder des Verzeichnisses. |
| Fields inherited from class de.frame4j.util.App |
|---|
ano, appBase, appIO, appStartTime, args, bgColor, err, fullClassName, help, icon, INIT_ERROR, jmxRemoteNote, JOB_DONE_OK, log, LOG_OUT_ERROR, MAIN_THREAD_EXC, mainThread, myClass, myFrame, name, NO_PARS_ERROR, objectName, out, outMode, packName, prop, retCode, runFlag, shortClassName, title, verbose, verbosity |
| Fields inherited from interface de.frame4j.net.AttrSettable |
|---|
ILLEGAL_TYPE, ILLEGAL_VALUE, NO_ATTRIBUTE, NO_KNOWN_ATTRIBUTE, NO_VALUE, OK |
| Constructor Summary | |
|---|---|
UpdNow()
|
|
| Method Summary | |
|---|---|
int |
doIt()
Arbeitsmethode von UpdNow. |
long |
getRate()
Die Periode der Aktualisierung (in Millisekunden). |
static void |
main(String[] args)
Startmethode von UpdNow. |
void |
setRate(CharSequence rate)
Die Periode der Aktualisierung (in Millisekunden) setzen. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public boolean runAtStart
public String startTime
TimeHelper.parse(...protected long rate
getRate()public String ziel
public String ziel2
public String pageStart
public String byTool
public String pageBodyStart
public String pageEnd
public boolean insertHour
| Constructor Detail |
|---|
public UpdNow()
| Method Detail |
|---|
public static void main(String[] args)
args - KommandozeilenparameterdoIt(),
App.go(java.lang.String[], java.lang.String, boolean, java.lang.CharSequence)public long getRate()
ComVar.ONE_MINUTE,
ComVar.ONE_HOUR,
ComVar.ONE_DAY,
ComVar.ONE_WEEK).
TimeHelper.parse(...,
setRate(CharSequence)
public void setRate(CharSequence rate)
throws IllegalArgumentException
IllegalArgumentExceptiongetRate(),
TimeHelper.parseDuration(...public int doIt()
main() via App.go()
aufgerufen.
doIt in class Appmain(Strin[]),
App.go(java.lang.String[], java.lang.String, boolean, java.lang.CharSequence)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||