OpenKeyWord  Build_ID: 457, Datum: 01.02.2020 07:45:48
Dont repeat yourself. - Do it once and only once!
okw.OKW_Memorize_Sngltn Klassenreferenz

OKW_Memorize ist die Speicher-Klasse hinter den Merke*-Schlüsselwörter. Mehr ...

+ Zusammengehörigkeiten von okw.OKW_Memorize_Sngltn:

Öffentliche Methoden

Boolean exists (String fpsKey)
 Prüft ob es eine Eintrag zum Schlüssel fpsKey vorhanden ist. Mehr ...
 
String get (String fpsKey)
 Holt den Aktuellen Wert eines Schlüssels. Mehr ...
 
void init ()
 Initialsiert die Klasse OKW.OKW_Memorize. Mehr ...
 
void load ()
 Liest die Werte der Klasse OKW_Memorize aus einer Datei, gegeben in OKW.OKW_Ini.Xml_Ini_xml, ein. Mehr ...
 
void save ()
 Schreibt die Felder (fields) der Klasse OKW_Memorize in eine Datei. Mehr ...
 
void set (String fpsKey, String fpsValue) throws XPathExpressionException
 Setzt/Merkt sich das MemKey/Value-Paar. Mehr ...
 

Öffentliche, statische Methoden

static OKW_Memorize_Sngltn getInstance ()
 Diese Methode gibt die einzige Instanz dieser Klasse zurück. Mehr ...
 
static void reset ()
 Methode setzt diese Klasse zurück. Mehr ...
 

Öffentliche Attribute

String OKW_Memorize_xml = ""
 Variable hält Pfad und Dateinamen der OKW_Memorize.xml. Mehr ...
 

Geschützte Attribute

Map< String, String > Value = new HashMap<String, String>()
 Dictionary speichert die Schlüssel-Wert Paare. Mehr ...
 
Map< String, String > ValuePersistent = new HashMap<String, String>()
 Dictionary speichert Schlüssel-Wert Paare. Mehr ...
 
LogMessenger LM = null
 Eine lokale Instanz des OKW.Log.LogMssenger. Mehr ...
 
Logger_Sngltn Log = Logger_Sngltn.getInstance()
 Referenz auf die einzige Instanz des Klasse OKW.Logger. Mehr ...
 
OKW_Properties Properties = OKW_Properties.getInstance()
 

Statische, geschützte Attribute

static OKW_Memorize_Sngltn Instance
 Singelton spezifisch: Dieses Feld speichert die einzige Instanz dieser Klasse. Mehr ...
 

Private Methoden

 OKW_Memorize_Sngltn ()
 Privater Konstruktor dieser Klasse. Mehr ...
 

Ausführliche Beschreibung

OKW_Memorize ist die Speicher-Klasse hinter den Merke*-Schlüsselwörter.

Mit Memorize*( "BN", "myKeyname" ) wird ein Wert

Diese Klasse ist nach dem Singelton-Pattern aufgebaut. Eine Instanz der Klasse wird wie folgt erstellt:

OKW.OKW_Memorrize.getInstance()
Autor
Zoltán Hrabovszki
Datum
2013.12.06 \

Definiert in Zeile 73 der Datei OKW_Memorize_Sngltn.java.

Beschreibung der Konstruktoren und Destruktoren

◆ OKW_Memorize_Sngltn()

okw.OKW_Memorize_Sngltn.OKW_Memorize_Sngltn ( )
private

Privater Konstruktor dieser Klasse.

Zu beachten
Der Konstruktor muss private da Singelton.

Verwende die Methode OKW_Memorize.Instace() um eine Instanz dieser Klasse zu erhalten.

Autor
Zoltán Hrabovszki
Datum
2014.14.27

Definiert in Zeile 167 der Datei OKW_Memorize_Sngltn.java.

168  {
169  try
170  {
171  LM = new LogMessenger("OKW_Memorize");
172  }
173  catch (Exception e)
174  {
175  OKW_HandleException.StopRunning(e, Instance.getClass());
176  }
177  }
+ Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

Dokumentation der Elementfunktionen

◆ exists()

Boolean okw.OKW_Memorize_Sngltn.exists ( String  fpsKey)

Prüft ob es eine Eintrag zum Schlüssel fpsKey vorhanden ist.

Nach Aufruf dieser Methode befinden sich die Klasse im Initialzustand. Dazu wird die Instance-Variable auf__null__ gesetzt. Wird in erster Linie für die Unittest benötigt.

Parameter
fpsKeySchlüssel, der geprüft werden soll. \returntrue, falls der gegeben schlüssel existiert, sonst false
Rückgabe
Autor
Zoltan Hrabovszki
Datum
2013.11.25

Definiert in Zeile 247 der Datei OKW_Memorize_Sngltn.java.

248  {
249  Boolean lvbReturn = false;
250 
251  Log.LogFunctionStartDebug(Instance.getClass().getName() + ".Exists", "String fpsKey", fpsKey);
252 
253  if ( Value.containsKey(fpsKey))
254  {
255  lvbReturn = true;
256  }
257  else
258  {
259  lvbReturn = false;
260  }
261 
262  Log.LogFunctionEndDebug(lvbReturn);
263 
264  return lvbReturn;
265  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:
+ Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

◆ get()

String okw.OKW_Memorize_Sngltn.get ( String  fpsKey)

Holt den Aktuellen Wert eines Schlüssels.

Kernfunktion dieser Klasse. Holt zum gegeben Schlüssel fpsKey den aktuellwert aus OKW_Memmorize._Value.

Ausnahmebehandlung
Eswird die Ausnahme OKWMemorizeKeyNotExistsException ausgelöst, wenn ein Schlüssel abgefragt wird, der vorher nicht eigespeichert wurde.
Parameter
fpsKey
Autor
Zoltán Hrabovszki
Datum
2014.12.27

Definiert in Zeile 284 der Datei OKW_Memorize_Sngltn.java.

285  {
286  String lvsReturn = null;
287 
288  Log.LogFunctionStartDebug(Instance.getClass().getName() + ".Get", "String fpsKey", fpsKey);
289 
290  try
291  {
292  if ( Value.containsKey(fpsKey))
293  {
294  lvsReturn = Value.get(fpsKey);
295  }
296  else
297  {
298  String ErrorText = LM.GetMessage("Get", "OKWMemorizeKeyNotExistsException", fpsKey);
299  throw new OKWMemorizeKeyNotExistsException(ErrorText);
300  }
301  }
302  finally
303  {
304  Log.LogFunctionEndDebug(lvsReturn);
305  }
306 
307  return lvsReturn;
308  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:
+ Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

◆ getInstance()

static OKW_Memorize_Sngltn okw.OKW_Memorize_Sngltn.getInstance ( )
static

Diese Methode gibt die einzige Instanz dieser Klasse zurück.

Nachdem Singelton-Muster wird die einzige Instanz der Klasse mit einer Methode abgerufen.

Diese Methode erzeug eine Instanz dieser Klasse und initialisiert diesen, sofern nicht bereits eine Instanz der Klasse exsistiert. Wenn eine Instenz bereits vorhanden ist, dann wird nur die Referenz auf die Instanz zurückgeliefert

Beipsiele für die Verwendung sind unter der Beschreibung dieser Klasse, OKW.OKW_Memorize, zu finden.

Autor
Zoltán Hrabovszki
Datum
2014.14.27

Definiert in Zeile 198 der Datei OKW_Memorize_Sngltn.java.

199  {
200  // Lazy Initialization (If required then only)
201  if (Instance == null)
202  {
203  // Thread Safe. Might be costly operation in some case
204  synchronized (OKW_Const_Sngltn.class)
205  {
206  if (Instance == null)
207  {
209  Instance.init();
210  }
211  }
212  }
213 
214  return Instance;
215  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

◆ init()

void okw.OKW_Memorize_Sngltn.init ( )

Initialsiert die Klasse OKW.OKW_Memorize.

Die Initialisierung der Klasse OKW.OKW_Ini läuft wie folgt ab:

/startuml{OKW_Memorize_de.png} start

:Lösche alle Werte im Speicher (**_Value**); :Hole Pfad und Dateiname\naus der OKW_Ini.xml;

if (Ist Pfad und Dateiname
für
OWK_Memorize.xml
gegeben?) then (ja)

if (Ist die gegebene Datei
vorhanden?) then (ja) :this.Read()> else (nein) :Gebe eine Warnung aus ; endif

else(nein) :Gebe eine Warnung: **'OKW_Memorize'** ist nicht gesetzt!; endif

stop /enduml

Autor
Zoltán Hrabovszki
Datum
2013.11.28

Definiert in Zeile 342 der Datei OKW_Memorize_Sngltn.java.

343  {
344  Log.LogFunctionStartDebug(this.getClass().getName() + ".Init");
345 
346  // Klassen Variablen erst löschen...
347 
349  Instance.Value.clear();
350 
351  // ... und dann alles Initialisieren!
352  // 1. Setze Pfad und
353  OKW_Memorize_xml = OKW_Ini_Sngltn.getInstance().OKW_Enviroment.getFile_OKW_Memorize_xml();
354 
355  if (!OKW_Helper.isStringNullOrEmpty(this.OKW_Memorize_xml))
356  {
357  this.Log.LogPrintDebug("OKW Memorize Datei = >>" + this.OKW_Memorize_xml + "<<");
358  if (OKW_FileHelper.fileExists(this.OKW_Memorize_xml))
359  {
360  // Lesen der Daten...
361  //this.Read();
362  }
363  else
364  {
365  // Deafault Werte Lesen.
366  Log.LogWarning("Datei: >>" + this.OKW_Memorize_xml + "<< nicht gefunden.");
367  }
368  }
369  else
370  {
371  Log.LogWarning("Enviroment variable 'OKWIni' not set!");
372  }
373 
375  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:
+ Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

◆ load()

void okw.OKW_Memorize_Sngltn.load ( )

Liest die Werte der Klasse OKW_Memorize aus einer Datei, gegeben in OKW.OKW_Ini.Xml_Ini_xml, ein.

Es wird eine XML Datei gelesen. Hierzu wird die Klasse OKW_Memorize mit System.Xml.XmlSerializer deserialisiert.

Autor
Zoltán Hrabovszki
Datum
2013.11.28

Definiert in Zeile 388 der Datei OKW_Memorize_Sngltn.java.

389  {
390  Log.LogFunctionStartDebug(Instance.getClass().getName() + "load()");
391 
392  try
393  {
394  OKW_XmlReader myXMLReader = new OKW_XmlReader("xml/OKW_Memorize.xml");
395  }
396  catch(Exception e)
397  {
398  Log.LogPrintDebug(e.getMessage());
399  }
400  finally
401  {
403  }
404  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

◆ reset()

static void okw.OKW_Memorize_Sngltn.reset ( )
static

Methode setzt diese Klasse zurück.

Nach Aufruf dieser Methode befinden sich die Klasse im Initialzustand. Dazu wird die Instance-Variable auf__null__ gesetzt. Wird in erster Linie für die Unittest benötigt.

Autor
Zoltan Hrabovszki
Datum
2013.11.25

Definiert in Zeile 228 der Datei OKW_Memorize_Sngltn.java.

229  {
230  Instance = null;
231  getInstance();
232  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:
+ Hier ist ein Graph der zeigt, wo diese Funktion aufgerufen wird:

◆ save()

void okw.OKW_Memorize_Sngltn.save ( )

Schreibt die Felder (fields) der Klasse OKW_Memorize in eine Datei.

Es wird eine XML Datei geschrieben. Hierzu wird die Klasse OKW_Ini mit der Klasse System.Xml.XmlSerializer serialisiert.

Pfad und Name der XML-Datei. Dies wird in der XML/OKW_Ini.xml vorgegeben: XPATH: OKW_Ini/OKW_Enviroment/OKW_Memorize_xml

Autor
Zoltán Hrabovszki
Datum
2013.11.28

Definiert in Zeile 421 der Datei OKW_Memorize_Sngltn.java.

422  {
423  Log.LogFunctionStartDebug( Instance.getClass().getName() + ".save");
424 
425  try
426  {
427  // Hint: The Name of Property with the Path nad Filename of the Properties-file
428  // to be loaded is "OKW_Memorize.properties"
429  Properties.getProperty( "OKW_Memorize.properties", "OKW_Memorize.properties" );
430 
431  }
432  finally
433  {
435  }
436  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

◆ set()

void okw.OKW_Memorize_Sngltn.set ( String  fpsKey,
String  fpsValue 
) throws XPathExpressionException

Setzt/Merkt sich das MemKey/Value-Paar.

Parameter
fpsKeyMemKey - Schlüssel für den Zugriff auf den Wert.
fpsValueWert, der gemerkt werden soll.
Ausnahmebehandlung
XPathExpressionException
Autor
Zoltán Hrabovszki
Datum
2014.12.27

Definiert in Zeile 452 der Datei OKW_Memorize_Sngltn.java.

453  {
454  Log.LogFunctionStartDebug(Instance.getClass().getName() + ".Set", "String fpsKey", fpsKey,
455  "String fpsValue", fpsValue);
456 
457  try
458  {
459  // Are we overwriting an existing MemKey?
460  if (Value.containsKey(fpsKey))
461  {
462  String lvsOverwriteKey = LM.GetMessage("Set", "OverwriteKey", fpsKey);
463  String lvsOldValue = LM.GetMessage("Set", "OldValue", Value.get(fpsKey));
464  String lvsNewValue = LM.GetMessage("Set", "NewValue", fpsValue);
465 
466  if (!lvsOldValue.equals( lvsNewValue ))
467  {
468  Log.ResOpenList(lvsOverwriteKey);
469  Log.LogPrint(lvsOldValue);
470  Log.LogPrint(lvsNewValue);
471  Log.ResCloseList();
472  }
473  Instance.Value.put(fpsKey, fpsValue);
474  }
475  else
476  {
477  Instance.Value.put(fpsKey, fpsValue);
478 
479  Log.ResOpenList(LM.GetMessage("Set", "SetValue", fpsKey, fpsValue));
480  String lvsMessage = LM.GetMessage("Set", "SetKeyAndValue", fpsKey, fpsValue);
481  Log.LogPrint( lvsMessage);
482  Log.ResCloseList();
483  }
484 
485  // persistentes Speichern aller Daten...
486  // TODO: Prüfen: das wurde ebntfern. Frage soll hier eine Persisntes eingebaut werden?
487  // Instance.save();
488  }
489  finally
490  {
492  }
493  }
+ Hier ist ein Graph, der zeigt, was diese Funktion aufruft:

Dokumentation der Datenelemente

◆ Instance

OKW_Memorize_Sngltn okw.OKW_Memorize_Sngltn.Instance
staticprotected

Singelton spezifisch: Dieses Feld speichert die einzige Instanz dieser Klasse.

Es wird die Properties Datein geladen, die im OKW-Property "OKW_Memorize.properties" angegeben ist Der Default Wert ist "OKW_Memorize.properties".

Diese Datei wird automatisch beim Initialisieren der Klasse geladen und bei jedem Setzen des wertes in der Datei, gegeben in "OKW_Memorize.properties", gespeichert.

Autor
Zoltán Hrabovszki
Datum
2013.11.28

Definiert in Zeile 129 der Datei OKW_Memorize_Sngltn.java.

◆ LM

LogMessenger okw.OKW_Memorize_Sngltn.LM = null
protected

Eine lokale Instanz des OKW.Log.LogMssenger.

Autor
Zoltán Hrabovszki
Datum
2014.12.28

Definiert in Zeile 140 der Datei OKW_Memorize_Sngltn.java.

◆ Log

Logger_Sngltn okw.OKW_Memorize_Sngltn.Log = Logger_Sngltn.getInstance()
protected

Referenz auf die einzige Instanz des Klasse OKW.Logger.

Autor
Zoltán Hrabovszki
Datum
2013.11.28

Definiert in Zeile 150 der Datei OKW_Memorize_Sngltn.java.

◆ OKW_Memorize_xml

String okw.OKW_Memorize_Sngltn.OKW_Memorize_xml = ""

Variable hält Pfad und Dateinamen der OKW_Memorize.xml.

Autor
Zoltán Hrabovszki
Datum
2013.11.28

Definiert in Zeile 83 der Datei OKW_Memorize_Sngltn.java.

◆ Value

Map<String, String> okw.OKW_Memorize_Sngltn.Value = new HashMap<String, String>()
protected

Dictionary speichert die Schlüssel-Wert Paare.

Die Hier gespeicherten werte sind nicht persistent.

Autor
Zoltán Hrabovszki
Datum
2013.11.28

Definiert in Zeile 96 der Datei OKW_Memorize_Sngltn.java.

◆ ValuePersistent

Map<String, String> okw.OKW_Memorize_Sngltn.ValuePersistent = new HashMap<String, String>()
protected

Dictionary speichert Schlüssel-Wert Paare.

Die Hier gespeicherten werte sind persistent. Die Werte werden aus/in die Datei gespeichert der Datei

Autor
Zoltán Hrabovszki
Datum
2019.11.25

Definiert in Zeile 111 der Datei OKW_Memorize_Sngltn.java.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:
okw.log.Logger_Sngltn.ResOpenList
void ResOpenList(String fps_Name)
Creates a new hierarchical level in the results file.
Definition: Logger_Sngltn.java:614
okw.log.Logger_Sngltn.LogFunctionEndDebug
void LogFunctionEndDebug()
LogFunctionEndDebug:
Definition: Logger_Sngltn.java:249
okw.OKW_Memorize_Sngltn.OKW_Memorize_xml
String OKW_Memorize_xml
Variable hält Pfad und Dateinamen der OKW_Memorize.xml.
Definition: OKW_Memorize_Sngltn.java:83
okw.OKW_Memorize_Sngltn.Instance
static OKW_Memorize_Sngltn Instance
Singelton spezifisch: Dieses Feld speichert die einzige Instanz dieser Klasse.
Definition: OKW_Memorize_Sngltn.java:129
okw.OKW_Memorize_Sngltn.OKW_Memorize_Sngltn
OKW_Memorize_Sngltn()
Privater Konstruktor dieser Klasse.
Definition: OKW_Memorize_Sngltn.java:167
okw.log.Logger_Sngltn.LogFunctionStartDebug
void LogFunctionStartDebug(String fps_FunctionName, String... fpsParameter)
LogFunctionStartDebug:
Definition: Logger_Sngltn.java:311
okw.log.Logger_Sngltn.LogPrint
void LogPrint(String fps_Message)
LogPrint Function: Prints the values of expressions to the results file.
Definition: Logger_Sngltn.java:487
okw.OKW_Properties.getProperty
String getProperty(String fpsKey)
Ermittelt den aktuellen Wert des Propertys gegeben mit dem Schlüssel fpsKey.
Definition: OKW_Properties.java:804
okw.log.Logger_Sngltn.ResCloseList
void ResCloseList()
Closes a hierarchical level in the results file that was opened with ResOpenList.
Definition: Logger_Sngltn.java:574
okw.OKW_Memorize_Sngltn.init
void init()
Initialsiert die Klasse OKW.OKW_Memorize.
Definition: OKW_Memorize_Sngltn.java:342
okw.log.Logger_Sngltn.LogPrintDebug
void LogPrintDebug(String fpsMessage)
Loggt eine Nachricht.
Definition: Logger_Sngltn.java:520
okw.OKW_Memorize_Sngltn.getInstance
static OKW_Memorize_Sngltn getInstance()
Diese Methode gibt die einzige Instanz dieser Klasse zurück.
Definition: OKW_Memorize_Sngltn.java:198
okw.LogMessenger.GetMessage
String GetMessage(String MethodName, String TextKey)
Holt die Log-Meldung für MethodeNmae/Textkey ohne weitere Parameter.
Definition: LogMessenger.java:137
okw.OKW_Memorize_Sngltn.LM
LogMessenger LM
Eine lokale Instanz des OKW.Log.LogMssenger.
Definition: OKW_Memorize_Sngltn.java:140
okw.OKW_Memorize_Sngltn.Log
Logger_Sngltn Log
Referenz auf die einzige Instanz des Klasse OKW.Logger.
Definition: OKW_Memorize_Sngltn.java:150
okw.OKW_Memorize_Sngltn.Value
Map< String, String > Value
Dictionary speichert die Schlüssel-Wert Paare.
Definition: OKW_Memorize_Sngltn.java:96
okw.log.Logger_Sngltn.LogWarning
void LogWarning(String fps_Message)
LogWarning Function: Logs a warning to the results file.
Definition: Logger_Sngltn.java:536