Langlaufsimulator

This commit is contained in:
maxim.derksen
2020-12-03 11:11:10 +01:00
commit 6a8532dd89
24 changed files with 2447 additions and 0 deletions

Binary file not shown.

View File

@@ -0,0 +1,25 @@
#BlueJ class context
comment0.target=Athlete
comment0.text=\r\n\ Beschreiben\ Sie\ hier\ die\ Klasse\ Athlete.\r\n\ \r\n\ @author\ (Ihr\ Name)\ \r\n\ @version\ (eine\ Versionsnummer\ oder\ ein\ Datum)\r\n
comment1.params=pName
comment1.target=Athlete(java.lang.String)
comment1.text=\r\n\ Konstruktor\ f\u00FCr\ Objekte\ der\ Klasse\ Athlete\r\n
comment10.params=pOther
comment10.target=boolean\ isLess(Athlete)
comment2.params=
comment2.target=java.lang.String\ getName()
comment3.params=
comment3.target=double\ getStartTime()
comment4.params=
comment4.target=double\ getEndTime()
comment5.params=
comment5.target=double\ getFinalTime()
comment6.params=pStartTime
comment6.target=void\ setStartTime(double)
comment7.params=pEndTime
comment7.target=void\ setEndTime(double)
comment8.params=pOther
comment8.target=boolean\ isGreater(Athlete)
comment9.params=pOther
comment9.target=boolean\ isEqual(Athlete)
numComments=11

View File

@@ -0,0 +1,56 @@
/**
* Beschreiben Sie hier die Klasse Athlete.
*
* @author (Ihr Name)
* @version (eine Versionsnummer oder ein Datum)
*/
public class Athlete implements ComparableContent<Athlete> {
String name;
double startTime;
double endTime;
/**
* Konstruktor für Objekte der Klasse Athlete
*/
public Athlete(String pName) {
name = pName;
}
public String getName(){
return name;
}
public double getStartTime(){
return startTime;
}
public double getEndTime(){
return endTime;
}
public double getFinalTime() {
return endTime - startTime;
}
public void setStartTime(double pStartTime){
startTime=pStartTime;
}
public void setEndTime(double pEndTime){
endTime= pEndTime;
}
public boolean isGreater(Athlete pOther){
return pOther.getFinalTime() < getFinalTime();
}
public boolean isEqual(Athlete pOther){
return pOther.getFinalTime() == getFinalTime();
}
public boolean isLess(Athlete pOther){
return pOther.getFinalTime() > getFinalTime();
}
}

View File

@@ -0,0 +1,260 @@
/**
* <p>
* Materialien zu den zentralen NRW-Abiturpruefungen im Fach Informatik ab 2018
* </p>
* <p>
* Generische Klasse BinarySearchTree<ContentType>
* </p>
* <p>
* Mithilfe der generischen Klasse BinarySearchTree koennen beliebig viele
* Objekte in einem Binaerbaum (binaerer Suchbaum) entsprechend einer
* Ordnungsrelation verwaltet werden. <br />
* Ein Objekt der Klasse stellt entweder einen leeren binaeren Suchbaum dar oder
* verwaltet ein Inhaltsobjekt sowie einen linken und einen rechten Teilbaum,
* die ebenfalls Objekte der Klasse BinarySearchTree sind.<br />
* Die Klasse der Objekte, die in dem Suchbaum verwaltet werden sollen, muss
* das generische Interface ComparableContent implementieren. Dabei muss durch
* Ueberschreiben der drei Vergleichsmethoden isLess, isEqual, isGreater (s.
* Dokumentation des Interfaces) eine eindeutige Ordnungsrelation festgelegt
* sein. <br />
* Alle Objekte im linken Teilbaum sind kleiner als das Inhaltsobjekt des
* binaeren Suchbaums. Alle Objekte im rechten Teilbaum sind groesser als das
* Inhaltsobjekt des binaeren Suchbaums. Diese Bedingung gilt (rekursiv) auch in
* beiden Teilbaeumen. <br />
* Hinweis: In dieser Version wird die Klasse BinaryTree nicht benutzt.
* </p>
*
* @author Qualitaets- und UnterstuetzungsAgentur - Landesinstitut fuer Schule
* @version Generisch_03 2017-11-28
*/
public class BinarySearchTree<ContentType extends ComparableContent<ContentType>> {
/* --------- Anfang der privaten inneren Klasse -------------- */
/**
* Durch diese innere Klasse kann man dafuer sorgen, dass ein leerer Baum
* null ist, ein nicht-leerer Baum jedoch immer eine nicht-null-Wurzel sowie
* nicht-null-Teilbaeume hat.
*/
private class BSTNode<CT extends ComparableContent<CT>> {
private CT content;
private BinarySearchTree<CT> left, right;
public BSTNode(CT pContent) {
// Der Knoten hat einen linken und rechten Teilbaum, die
// beide von null verschieden sind. Also hat ein Blatt immer zwei
// leere Teilbaeume unter sich.
this.content = pContent;
left = new BinarySearchTree<CT>();
right = new BinarySearchTree<CT>();
}
}
/* ----------- Ende der privaten inneren Klasse -------------- */
private BSTNode<ContentType> node;
/**
* Der Konstruktor erzeugt einen leeren Suchbaum.
*/
public BinarySearchTree() {
this.node = null;
}
/**
* Diese Anfrage liefert den Wahrheitswert true, wenn der Suchbaum leer ist,
* sonst liefert sie den Wert false.
*
* @return true, wenn der binaere Suchbaum leer ist, sonst false
*
*/
public boolean isEmpty() {
return this.node == null;
}
/**
* Falls der Parameter null ist, geschieht nichts.<br />
* Falls ein bezueglich der verwendeten Vergleichsmethode isEqual mit
* pContent uebereinstimmendes Objekt im geordneten binaeren Suchbau
* enthalten ist, passiert nichts. <br />
* Achtung: hier wird davon ausgegangen, dass isEqual genau dann true
* liefert, wenn isLess und isGreater false liefern. <br />
* Andernfalls (isLess oder isGreater) wird das Objekt pContent entsprechend
* der vorgegebenen Ordnungsrelation in den BinarySearchTree eingeordnet.
*
* @param pContent
* einzufuegendes Objekt vom Typ ContentType
*
*/
public void insert(ContentType pContent) {
if (pContent != null) {
if (isEmpty()) {
this.node = new BSTNode<ContentType>(pContent);
} else if (pContent.isLess(this.node.content)) {
this.node.left.insert(pContent);
} else if(pContent.isGreater(this.node.content)) {
this.node.right.insert(pContent);
}
}
}
/**
* Diese Anfrage liefert den linken Teilbaum des binaeren Suchbaumes. <br />
* Wenn er leer ist, wird null zurueckgegeben.
*
* @return den linken Teilbaum (Objekt vom Typ BinarySearchTree<ContentType>)
* bzw. null, wenn der Suchbaum leer ist
*
*/
public BinarySearchTree<ContentType> getLeftTree() {
if (this.isEmpty()) {
return null;
} else {
return this.node.left;
}
}
/**
* Diese Anfrage liefert das Inhaltsobjekt des Suchbaumes. Wenn der Suchbaum
* leer ist, wird null zurueckgegeben.
*
* @return das Inhaltsobjekt vom Typ ContentType bzw. null, wenn der aktuelle
* Suchbaum leer ist
*
*/
public ContentType getContent() {
if (this.isEmpty()) {
return null;
} else {
return this.node.content;
}
}
/**
* Diese Anfrage liefert den rechten Teilbaum des binaeren Suchbaumes. <br />
* Wenn er leer ist, wird null zurueckgegeben.
*
* @return den rechten Teilbaum (Objekt vom Typ BinarySearchTree<ContentType>)
* bzw. null, wenn der aktuelle Suchbaum leer ist
*
*/
public BinarySearchTree<ContentType> getRightTree() {
if (this.isEmpty()) {
return null;
} else {
return this.node.right;
}
}
/**
* Falls ein bezueglich der verwendeten Vergleichsmethode mit
* pContent uebereinstimmendes Objekt im binaeren Suchbaum enthalten
* ist, wird dieses entfernt. Falls der Parameter null ist, aendert sich
* nichts.
*
* @param pContent
* zu entfernendes Objekt vom Typ ContentType
*
*/
public void remove(ContentType pContent) {
if (isEmpty() || pContent == null ) {
// Abbrechen, da kein Element zum entfernen vorhanden ist.
return;
}
if (pContent.isLess(node.content)) {
// Element ist im linken Teilbaum zu loeschen.
node.left.remove(pContent);
} else if (pContent.isGreater(node.content)) {
// Element ist im rechten Teilbaum zu loeschen.
node.right.remove(pContent);
} else {
// Element ist gefunden.
if (node.left.isEmpty()) {
if (node.right.isEmpty()) {
// Es gibt keinen Nachfolger.
node = null;
} else {
// Es gibt nur rechts einen Nachfolger.
node = getNodeOfRightSuccessor();
}
} else if (node.right.isEmpty()) {
// Es gibt nur links einen Nachfolger.
node = getNodeOfLeftSuccessor();
} else {
// Es gibt links und rechts einen Nachfolger.
if (getNodeOfRightSuccessor().left.isEmpty()) {
// Der rechte Nachfolger hat keinen linken Nachfolger.
node.content = getNodeOfRightSuccessor().content;
node.right = getNodeOfRightSuccessor().right;
} else {
BinarySearchTree<ContentType> previous = node.right
.ancestorOfSmallRight();
BinarySearchTree<ContentType> smallest = previous.node.left;
this.node.content = smallest.node.content;
previous.remove(smallest.node.content);
}
}
}
}
/**
* Falls ein bezueglich der verwendeten Vergleichsmethode isEqual mit
* pContent uebereinstimmendes Objekt im binaeren Suchbaum enthalten ist,
* liefert die Anfrage dieses, ansonsten wird null zurueckgegeben. <br />
* Falls der Parameter null ist, wird null zurueckgegeben.
*
* @param pContent
* zu suchendes Objekt vom Typ ContentType
* @return das gefundene Objekt vom Typ ContentType, bei erfolgloser Suche null
*
*/
public ContentType search(ContentType pContent) {
if (this.isEmpty() || pContent == null) {
// Abbrechen, da es kein Element zu suchen gibt.
return null;
} else {
ContentType content = this.getContent();
if (pContent.isLess(content)) {
// Element wird im linken Teilbaum gesucht.
return this.getLeftTree().search(pContent);
} else if (pContent.isGreater(content)) {
// Element wird im rechten Teilbaum gesucht.
return this.getRightTree().search(pContent);
} else if (pContent.isEqual(content)) {
// Element wurde gefunden.
return content;
} else {
// Dieser Fall sollte nicht auftreten.
return null;
}
}
}
/* ----------- Weitere private Methoden -------------- */
/**
* Die Methode liefert denjenigen Baum, dessen linker Nachfolger keinen linken
* Nachfolger mehr hat. Es ist also spaeter moeglich, in einem Baum im
* rechten Nachfolger den Vorgaenger des linkesten Nachfolgers zu finden.
*
*/
private BinarySearchTree<ContentType> ancestorOfSmallRight() {
if (getNodeOfLeftSuccessor().left.isEmpty()) {
return this;
} else {
return node.left.ancestorOfSmallRight();
}
}
private BSTNode<ContentType> getNodeOfLeftSuccessor() {
return node.left.node;
}
private BSTNode<ContentType> getNodeOfRightSuccessor() {
return node.right.node;
}
}

Binary file not shown.

View File

@@ -0,0 +1,13 @@
#BlueJ class context
comment0.target=ComparableContent
comment0.text=\r\n\ <p>\r\n\ Materialien\ zu\ den\ zentralen\ NRW-Abiturpruefungen\ im\ Fach\ Informatik\ ab\ 2018\r\n\ </p>\r\n\ <p>\r\n\ Generisches\ Interface\ (Schnittstelle)\ ComparableContent<ContentType>\r\n\ </p>\r\n\ <p>\r\n\ <p>Das\ generische\ Interface\ ComparableContent<ContentType>\ legt\ die\ Methoden\r\n\ fest,\ ueber\ die\ Objekte\ verfuegen\ muessen,\ die\ in\ einen\ binaeren\ Suchbaum\r\n\ (BinarySearchTree)\ eingefuegt\ werden\ sollen.\ Die\ Ordnungsrelation\ wird\ in\r\n\ Klassen,\ die\ ComparableContent\ implementieren\ durch\ Ueberschreiben\ der\ drei\r\n\ implizit\ abstrakten\ Methoden\ isGreater,\ isEqual\ und\ isLess\ festgelegt.\ \r\n\ </p>\r\n\ </p>\r\n\ @author\ Qualitaets-\ und\ UnterstuetzungsAgentur\ -\ Landesinstitut\ fuer\ Schule\r\n\ @version\ Generisch_02\ 2014-03-01\r\n
comment1.params=pContent
comment1.target=boolean\ isGreater(java.lang.Object)
comment1.text=\r\n\ Wenn\ festgestellt\ wird,\ dass\ das\ Objekt,\ von\ dem\ die\ Methode\ aufgerufen\r\n\ wird,\ bzgl.\ der\ gewuenschten\ Ordnungsrelation\ groesser\ als\ das\ Objekt\r\n\ pContent\ ist,\ wird\ true\ geliefert.\ Sonst\ wird\ false\ geliefert.\r\n\r\n\ @param\ pContent\r\n\ \ \ \ \ \ \ \ \ \ das\ mit\ dem\ aufrufenden\ Objekt\ zu\ vergleichende\ Objekt\ vom\r\n\ \ \ \ \ \ \ \ \ \ Typ\ ContentType\r\n\ @return\ true,\ wenn\ das\ aufrufende\ Objekt\ groesser\ ist\ als\ das\ Objekt\r\n\ \ \ \ \ \ \ \ \ pContent,\ sonst\ false\r\n
comment2.params=pContent
comment2.target=boolean\ isEqual(java.lang.Object)
comment2.text=\r\n\ Wenn\ festgestellt\ wird,\ dass\ das\ Objekt,\ von\ dem\ die\ Methode\ aufgerufen\r\n\ wird,\ bzgl.\ der\ gewuenschten\ Ordnungsrelation\ gleich\ gross\ wie\ das\ Objekt\r\n\ pContent\ ist,\ wird\ true\ geliefert.\ Sonst\ wird\ false\ geliefert.\r\n\r\n\ @param\ pContent\r\n\ \ \ \ \ \ \ \ \ \ das\ mit\ dem\ aufrufenden\ Objekt\ zu\ vergleichende\ Objekt\ vom\r\n\ \ \ \ \ \ \ \ \ \ Typ\ ContentType\r\n\ @return\ true,\ wenn\ das\ aufrufende\ Objekt\ gleich\ gross\ ist\ wie\ das\ Objekt\r\n\ \ \ \ \ \ \ \ \ pContent,\ sonst\ false\r\n
comment3.params=pContent
comment3.target=boolean\ isLess(java.lang.Object)
comment3.text=\r\n\ Wenn\ festgestellt\ wird,\ dass\ das\ Objekt,\ von\ dem\ die\ Methode\ aufgerufen\r\n\ wird,\ bzgl.\ der\ gewuenschten\ Ordnungsrelation\ kleiner\ als\ das\ Objekt\r\n\ pContent\ ist,\ wird\ true\ geliefert.\ Sonst\ wird\ false\ geliefert.\r\n\r\n\ @param\ pContent\r\n\ \ \ \ \ \ \ \ \ \ das\ mit\ dem\ aufrufenden\ Objekt\ zu\ vergleichende\ Objekt\ vom\r\n\ \ \ \ \ \ \ \ \ \ Typ\ ContentType\r\n\ @return\ true,\ wenn\ das\ aufrufende\ Objekt\ kleiner\ ist\ als\ das\ Objekt\r\n\ \ \ \ \ \ \ \ \ pContent,\ sonst\ false\ \ \ \r\n
numComments=4

View File

@@ -0,0 +1,60 @@
/**
* <p>
* Materialien zu den zentralen NRW-Abiturpruefungen im Fach Informatik ab 2018
* </p>
* <p>
* Generisches Interface (Schnittstelle) ComparableContent<ContentType>
* </p>
* <p>
* <p>Das generische Interface ComparableContent<ContentType> legt die Methoden
* fest, ueber die Objekte verfuegen muessen, die in einen binaeren Suchbaum
* (BinarySearchTree) eingefuegt werden sollen. Die Ordnungsrelation wird in
* Klassen, die ComparableContent implementieren durch Ueberschreiben der drei
* implizit abstrakten Methoden isGreater, isEqual und isLess festgelegt.
* </p>
* </p>
* @author Qualitaets- und UnterstuetzungsAgentur - Landesinstitut fuer Schule
* @version Generisch_02 2014-03-01
*/
public interface ComparableContent<ContentType> {
/**
* Wenn festgestellt wird, dass das Objekt, von dem die Methode aufgerufen
* wird, bzgl. der gewuenschten Ordnungsrelation groesser als das Objekt
* pContent ist, wird true geliefert. Sonst wird false geliefert.
*
* @param pContent
* das mit dem aufrufenden Objekt zu vergleichende Objekt vom
* Typ ContentType
* @return true, wenn das aufrufende Objekt groesser ist als das Objekt
* pContent, sonst false
*/
public boolean isGreater(ContentType pContent);
/**
* Wenn festgestellt wird, dass das Objekt, von dem die Methode aufgerufen
* wird, bzgl. der gewuenschten Ordnungsrelation gleich gross wie das Objekt
* pContent ist, wird true geliefert. Sonst wird false geliefert.
*
* @param pContent
* das mit dem aufrufenden Objekt zu vergleichende Objekt vom
* Typ ContentType
* @return true, wenn das aufrufende Objekt gleich gross ist wie das Objekt
* pContent, sonst false
*/
public boolean isEqual(ContentType pContent);
/**
* Wenn festgestellt wird, dass das Objekt, von dem die Methode aufgerufen
* wird, bzgl. der gewuenschten Ordnungsrelation kleiner als das Objekt
* pContent ist, wird true geliefert. Sonst wird false geliefert.
*
* @param pContent
* das mit dem aufrufenden Objekt zu vergleichende Objekt vom
* Typ ContentType
* @return true, wenn das aufrufende Objekt kleiner ist als das Objekt
* pContent, sonst false
*/
public boolean isLess(ContentType pContent);
}

Binary file not shown.

View File

@@ -0,0 +1,11 @@
#BlueJ class context
comment0.target=Competition
comment0.text=\r\n\ Beschreiben\ Sie\ hier\ die\ Klasse\ Competition.\r\n\ \r\n\ @author\ (Ihr\ Name)\ \r\n\ @version\ (eine\ Versionsnummer\ oder\ ein\ Datum)\r\n
comment1.params=
comment1.target=Competition()
comment1.text=\r\n\ Konstruktor\ f\u00FCr\ Objekte\ der\ Klasse\ Competition\r\n
comment2.params=pName
comment2.target=void\ newRunner(java.lang.String)
comment3.params=
comment3.target=void\ simulate()
numComments=4

View File

@@ -0,0 +1,32 @@
/**
* Beschreiben Sie hier die Klasse Competition.
*
* @author (Ihr Name)
* @version (eine Versionsnummer oder ein Datum)
*/
public class Competition {
private List<Athlete> runners;
/**
* Konstruktor für Objekte der Klasse Competition
*/
public Competition() {
// ggf. Instanzvariable initialisieren
}
public void newRunner(String pName){
Athlete athlete = new Athlete(pName);
runners.toFirst();
runners.insert(athlete);
}
public void simulate(){
}
// public Athlete top3(){
// }
}

View File

@@ -0,0 +1,863 @@
BlueJ run started: Thu Dec 03 10:34:26 CET 2020
BlueJ version 4.2.2
Java version 11.0.2
JavaFX version 11.0.2+1
Virtual machine: OpenJDK 64-Bit Server VM 11.0.2+9 (Oracle Corporation)
Running on: Windows 7 6.1 (amd64)
Java Home: C:\Program Files\BlueJ\jdk
----
getExtensionsClass: jarFile=._CleanProjectExtension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
getExtensionsClass: jarFile=._GUI_Extension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Opening project: H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator
1606988070529: Listening for JDWP connection on address: javadebug
Connected to debug VM via dt_shmem transport...
java.io.FileNotFoundException while reading import cache: H:Dokumente\bluej\import-cache.xml (Das System kann die angegebene Datei nicht finden)
Communication with debug VM fully established.
Simple GUI Extension terminates
====
====
BlueJ run started: Thu Dec 03 10:35:26 CET 2020
BlueJ version 4.2.2
Java version 11.0.2
JavaFX version 11.0.2+1
Virtual machine: OpenJDK 64-Bit Server VM 11.0.2+9 (Oracle Corporation)
Running on: Windows 7 6.1 (amd64)
Java Home: C:\Program Files\BlueJ\jdk
----
getExtensionsClass: jarFile=._CleanProjectExtension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
getExtensionsClass: jarFile=._GUI_Extension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Opening project: H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator
1606988128452: Listening for JDWP connection on address: javadebug
Connected to debug VM via dt_shmem transport...
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.getAllEntities(ClassInfoFrontendBlueJ.java:32)
at de.upb.bluej.plus.subclasses.Subclasses.findAllClassNames(Subclasses.java:60)
at de.upb.bluej.plus.subclasses.Subclasses.updateTarget(Subclasses.java:156)
at de.upb.bluej.plus.subclasses.Subclasses$1.run(Subclasses.java:193)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.reparse(ClassInfoFrontendBlueJ.java:142)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.<init>(ClassInfoFrontendBlueJ.java:77)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTargetPane(UmlEditor.java:128)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTarget(UmlEditor.java:230)
at de.upb.bluej.plus.umleditor2.UmlEditor$1.run(UmlEditor.java:192)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Communication with debug VM fully established.
Simple GUI Extension terminates
====
====
BlueJ run started: Thu Dec 03 10:35:53 CET 2020
BlueJ version 4.2.2
Java version 11.0.2
JavaFX version 11.0.2+1
Virtual machine: OpenJDK 64-Bit Server VM 11.0.2+9 (Oracle Corporation)
Running on: Windows 7 6.1 (amd64)
Java Home: C:\Program Files\BlueJ\jdk
----
getExtensionsClass: jarFile=._CleanProjectExtension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
getExtensionsClass: jarFile=._GUI_Extension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Opening project: H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator
1606988155961: Listening for JDWP connection on address: javadebug
Connected to debug VM via dt_shmem transport...
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.getAllEntities(ClassInfoFrontendBlueJ.java:32)
at de.upb.bluej.plus.subclasses.Subclasses.findAllClassNames(Subclasses.java:60)
at de.upb.bluej.plus.subclasses.Subclasses.updateTarget(Subclasses.java:156)
at de.upb.bluej.plus.subclasses.Subclasses$1.run(Subclasses.java:193)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.reparse(ClassInfoFrontendBlueJ.java:142)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.<init>(ClassInfoFrontendBlueJ.java:77)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTargetPane(UmlEditor.java:128)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTarget(UmlEditor.java:230)
at de.upb.bluej.plus.umleditor2.UmlEditor$1.run(UmlEditor.java:192)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Communication with debug VM fully established.
ExtensionWrapper.safePostGenGetMenuItem: Class=org.bluej.UMLextension.UMLExtension Exception=component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
at org.bluej.UMLextension.MenuBuilder.notifyPostClassMenu(MenuBuilder.java:48)
at bluej.extmgr.ClassExtensionMenu.postMenuItem(ClassExtensionMenu.java:66)
at bluej.extensions.BlueJ.postMenuItem(BlueJ.java:964)
at bluej.extensions.ExtensionBridge.postMenuItem(ExtensionBridge.java:142)
at bluej.extmgr.ExtensionWrapper.safePostMenuItem(ExtensionWrapper.java:673)
at bluej.extmgr.FXMenuManager.lambda$menuWillBecomeVisible$5(FXMenuManager.java:196)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Dez. 03, 2020 10:51:34 VORM. javafx.scene.CssStyleHelper calculateValue
WARNING: Could not resolve '-fx-text-background-color' while resolving lookups for '-fx-text-fill' from rule '*.label' in stylesheet jar:file:/C:/Program%20Files/BlueJ/lib/javafx/lib/javafx.controls.jar!/com/sun/javafx/scene/control/skin/modena/modena.bss
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.reparse(ClassInfoFrontendBlueJ.java:221)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.<init>(ClassInfoFrontendBlueJ.java:77)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTargetPane(UmlEditor.java:128)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTarget(UmlEditor.java:230)
at de.upb.bluej.plus.umleditor2.UmlEditor$1.run(UmlEditor.java:192)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.reparse(ClassInfoFrontendBlueJ.java:221)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.<init>(ClassInfoFrontendBlueJ.java:77)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTargetPane(UmlEditor.java:128)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTarget(UmlEditor.java:230)
at de.upb.bluej.plus.umleditor2.UmlEditor$1.run(UmlEditor.java:192)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Dez. 03, 2020 10:56:57 VORM. javafx.scene.CssStyleHelper calculateValue
WARNING: Could not resolve '-fx-text-background-color' while resolving lookups for '-fx-text-fill' from rule '*.label' in stylesheet jar:file:/C:/Program%20Files/BlueJ/lib/javafx/lib/javafx.controls.jar!/com/sun/javafx/scene/control/skin/modena/modena.bss
Simple GUI Extension terminates
====
====
BlueJ run started: Thu Dec 03 11:00:47 CET 2020
BlueJ version 4.2.2
Java version 11.0.2
JavaFX version 11.0.2+1
Virtual machine: OpenJDK 64-Bit Server VM 11.0.2+9 (Oracle Corporation)
Running on: Windows 7 6.1 (amd64)
Java Home: C:\Program Files\BlueJ\jdk
----
getExtensionsClass: jarFile=._CleanProjectExtension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
getExtensionsClass: jarFile=._GUI_Extension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Opening project: H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator
1606989650221: Listening for JDWP connection on address: javadebug
Connected to debug VM via dt_shmem transport...
Communication with debug VM fully established.
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.getAllEntities(ClassInfoFrontendBlueJ.java:32)
at de.upb.bluej.plus.subclasses.Subclasses.findAllClassNames(Subclasses.java:60)
at de.upb.bluej.plus.subclasses.Subclasses.updateTarget(Subclasses.java:156)
at de.upb.bluej.plus.subclasses.Subclasses$1.run(Subclasses.java:193)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.reparse(ClassInfoFrontendBlueJ.java:142)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.<init>(ClassInfoFrontendBlueJ.java:77)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTargetPane(UmlEditor.java:128)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTarget(UmlEditor.java:230)
at de.upb.bluej.plus.umleditor2.UmlEditor$1.run(UmlEditor.java:192)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Simple GUI Extension terminates
====
====
BlueJ run started: Thu Dec 03 11:03:45 CET 2020
BlueJ version 4.2.2
Java version 11.0.2
JavaFX version 11.0.2+1
Virtual machine: OpenJDK 64-Bit Server VM 11.0.2+9 (Oracle Corporation)
Running on: Windows 7 6.1 (amd64)
Java Home: C:\Program Files\BlueJ\jdk
----
getExtensionsClass: jarFile=._CleanProjectExtension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
getExtensionsClass: jarFile=._GUI_Extension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Opening project: H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator
1606989827405: Listening for JDWP connection on address: javadebug
Connected to debug VM via dt_shmem transport...
Communication with debug VM fully established.
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.getAllEntities(ClassInfoFrontendBlueJ.java:32)
at de.upb.bluej.plus.subclasses.Subclasses.findAllClassNames(Subclasses.java:60)
at de.upb.bluej.plus.subclasses.Subclasses.updateTarget(Subclasses.java:156)
at de.upb.bluej.plus.subclasses.Subclasses$1.run(Subclasses.java:193)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.reparse(ClassInfoFrontendBlueJ.java:142)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.<init>(ClassInfoFrontendBlueJ.java:77)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTargetPane(UmlEditor.java:128)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTarget(UmlEditor.java:230)
at de.upb.bluej.plus.umleditor2.UmlEditor$1.run(UmlEditor.java:192)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
ExtensionWrapper.safePostGenGetMenuItem: Class=org.bluej.UMLextension.UMLExtension Exception=component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
at org.bluej.UMLextension.MenuBuilder.notifyPostClassMenu(MenuBuilder.java:48)
at bluej.extmgr.ClassExtensionMenu.postMenuItem(ClassExtensionMenu.java:66)
at bluej.extensions.BlueJ.postMenuItem(BlueJ.java:964)
at bluej.extensions.ExtensionBridge.postMenuItem(ExtensionBridge.java:142)
at bluej.extmgr.ExtensionWrapper.safePostMenuItem(ExtensionWrapper.java:673)
at bluej.extmgr.FXMenuManager.lambda$menuWillBecomeVisible$5(FXMenuManager.java:196)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
ExtensionWrapper.safePostGenGetMenuItem: Class=org.bluej.UMLextension.UMLExtension Exception=component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
at org.bluej.UMLextension.MenuBuilder.notifyPostClassMenu(MenuBuilder.java:48)
at bluej.extmgr.ClassExtensionMenu.postMenuItem(ClassExtensionMenu.java:66)
at bluej.extensions.BlueJ.postMenuItem(BlueJ.java:964)
at bluej.extensions.ExtensionBridge.postMenuItem(ExtensionBridge.java:142)
at bluej.extmgr.ExtensionWrapper.safePostMenuItem(ExtensionWrapper.java:673)
at bluej.extmgr.FXMenuManager.lambda$menuWillBecomeVisible$5(FXMenuManager.java:196)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Simple GUI Extension terminates
====
====
BlueJ run started: Thu Dec 03 11:04:51 CET 2020
BlueJ version 4.2.2
Java version 11.0.2
JavaFX version 11.0.2+1
Virtual machine: OpenJDK 64-Bit Server VM 11.0.2+9 (Oracle Corporation)
Running on: Windows 7 6.1 (amd64)
Java Home: C:\Program Files\BlueJ\jdk
----
getExtensionsClass: jarFile=._CleanProjectExtension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
getExtensionsClass: jarFile=._GUI_Extension.jar Exception=zip END header not found
java.util.zip.ZipException: zip END header not found
at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1529)
at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1430)
at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1437)
at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1268)
at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1231)
at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:726)
at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:843)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:246)
at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:176)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:346)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:317)
at java.base/java.util.jar.JarFile.<init>(JarFile.java:283)
at bluej.extmgr.ExtensionWrapper.getExtensionClass(ExtensionWrapper.java:128)
at bluej.extmgr.ExtensionWrapper.<init>(ExtensionWrapper.java:94)
at bluej.extmgr.ExtensionsManager.loadDirectoryExtensions(ExtensionsManager.java:155)
at bluej.extmgr.ExtensionsManager.loadExtensions(ExtensionsManager.java:105)
at bluej.extmgr.ExtensionsManager.getInstance(ExtensionsManager.java:66)
at bluej.Main.lambda$new$2(Main.java:152)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Opening project: H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator
1606989893440: Listening for JDWP connection on address: javadebug
Connected to debug VM via dt_shmem transport...
Communication with debug VM fully established.
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.getAllEntities(ClassInfoFrontendBlueJ.java:32)
at de.upb.bluej.plus.subclasses.Subclasses.findAllClassNames(Subclasses.java:60)
at de.upb.bluej.plus.subclasses.Subclasses.updateTarget(Subclasses.java:156)
at de.upb.bluej.plus.subclasses.Subclasses$1.run(Subclasses.java:193)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Exception in thread "JavaFX Application Thread" java.util.NoSuchElementException
at java.base/java.util.LinkedList$ListItr.next(LinkedList.java:894)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:127)
at de.upb.bluej.plus.ast.parser.ParseUtils.getTypeEntity(ParseUtils.java:111)
at de.upb.bluej.plus.ast.parser.EditorParser.getTparList(EditorParser.java:508)
at de.upb.bluej.plus.ast.parser.EditorParser.beginTypeBody(EditorParser.java:521)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeBody(JavaParser.java:824)
at de.upb.bluej.plus.ast.parser.JavaParser.parseTypeDef(JavaParser.java:811)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCUpart(JavaParser.java:658)
at de.upb.bluej.plus.ast.parser.JavaParser.parseCU(JavaParser.java:139)
at de.upb.bluej.plus.ast.parser.EditorParser.parseCU(EditorParser.java:127)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.parse(ClassInfoFrontendBlueJ.java:48)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.reparse(ClassInfoFrontendBlueJ.java:142)
at de.upb.bluej.plus.sourceedit.ClassInfoFrontendBlueJ.<init>(ClassInfoFrontendBlueJ.java:77)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTargetPane(UmlEditor.java:128)
at de.upb.bluej.plus.umleditor2.UmlEditor.updateTarget(UmlEditor.java:230)
at de.upb.bluej.plus.umleditor2.UmlEditor$1.run(UmlEditor.java:192)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
ExtensionWrapper.safePostGenGetMenuItem: Class=org.bluej.UMLextension.UMLExtension Exception=component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
at org.bluej.UMLextension.MenuBuilder.notifyPostClassMenu(MenuBuilder.java:48)
at bluej.extmgr.ClassExtensionMenu.postMenuItem(ClassExtensionMenu.java:66)
at bluej.extensions.BlueJ.postMenuItem(BlueJ.java:964)
at bluej.extensions.ExtensionBridge.postMenuItem(ExtensionBridge.java:142)
at bluej.extmgr.ExtensionWrapper.safePostMenuItem(ExtensionWrapper.java:673)
at bluej.extmgr.FXMenuManager.lambda$menuWillBecomeVisible$5(FXMenuManager.java:196)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
ExtensionWrapper.safePostGenGetMenuItem: Class=org.bluej.UMLextension.UMLExtension Exception=component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
at org.bluej.UMLextension.MenuBuilder.notifyPostClassMenu(MenuBuilder.java:48)
at bluej.extmgr.ClassExtensionMenu.postMenuItem(ClassExtensionMenu.java:66)
at bluej.extensions.BlueJ.postMenuItem(BlueJ.java:964)
at bluej.extensions.ExtensionBridge.postMenuItem(ExtensionBridge.java:142)
at bluej.extmgr.ExtensionWrapper.safePostMenuItem(ExtensionWrapper.java:673)
at bluej.extmgr.FXMenuManager.lambda$menuWillBecomeVisible$5(FXMenuManager.java:196)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
ExtensionWrapper.safePostGenGetMenuItem: Class=org.bluej.UMLextension.UMLExtension Exception=component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
at org.bluej.UMLextension.MenuBuilder.notifyPostClassMenu(MenuBuilder.java:48)
at bluej.extmgr.ClassExtensionMenu.postMenuItem(ClassExtensionMenu.java:66)
at bluej.extensions.BlueJ.postMenuItem(BlueJ.java:964)
at bluej.extensions.ExtensionBridge.postMenuItem(ExtensionBridge.java:142)
at bluej.extmgr.ExtensionWrapper.safePostMenuItem(ExtensionWrapper.java:673)
at bluej.extmgr.FXMenuManager.lambda$menuWillBecomeVisible$5(FXMenuManager.java:196)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
ExtensionWrapper.safePostGenGetMenuItem: Class=org.bluej.UMLextension.UMLExtension Exception=component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
at org.bluej.UMLextension.MenuBuilder.notifyPostClassMenu(MenuBuilder.java:48)
at bluej.extmgr.ClassExtensionMenu.postMenuItem(ClassExtensionMenu.java:66)
at bluej.extensions.BlueJ.postMenuItem(BlueJ.java:964)
at bluej.extensions.ExtensionBridge.postMenuItem(ExtensionBridge.java:142)
at bluej.extmgr.ExtensionWrapper.safePostMenuItem(ExtensionWrapper.java:673)
at bluej.extmgr.FXMenuManager.lambda$menuWillBecomeVisible$5(FXMenuManager.java:196)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4$1.run(EventQueue.java:727)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174)
at java.base/java.lang.Thread.run(Thread.java:834)
Dez. 03, 2020 11:07:05 VORM. javafx.scene.CssStyleHelper calculateValue
WARNING: Could not resolve '-fx-text-background-color' while resolving lookups for '-fx-text-fill' from rule '*.label' in stylesheet jar:file:/C:/Program%20Files/BlueJ/lib/javafx/lib/javafx.controls.jar!/com/sun/javafx/scene/control/skin/modena/modena.bss
Dez. 03, 2020 11:07:16 VORM. javafx.scene.CssStyleHelper calculateValue
WARNING: Could not resolve '-fx-text-background-color' while resolving lookups for '-fx-text-fill' from rule '*.label' in stylesheet jar:file:/C:/Program%20Files/BlueJ/lib/javafx/lib/javafx.controls.jar!/com/sun/javafx/scene/control/skin/modena/modena.bss
Simple GUI Extension terminates

View File

@@ -0,0 +1,14 @@
#BlueJ-Eigenschaften. Einstellungen in dieser Datei haben Vorrang vor "bluej.defs"
#Thu Dec 03 11:10:42 CET 2020
session.numeditors.stride=0
bluej.uid=d7f88ba8-9f5a-449f-b60b-0388a539b6b8
bluej.openPackage1=H\:\\Dokumente\\GitHub\\Langlaufsimulator\\Langlaufsimulator
bluej.editor.stride.sidebarShowing=true
bluej.startWithTextEval=false
bluej.recentProject0=H\:\\Dokumente\\GitHub\\Langlaufsimulator\\Langlaufsimulator
blackbox.uuid=15c55f30-6de2-43e6-a318-b9b25709c0b1
bluej.editor.fontsize=13
extensions.org.bluej.extensions.submitter.Submitter.settings.saslrealm=
bluej.terminal.y=16
bluej.terminal.x=16
session.numeditors.java=3

View File

@@ -0,0 +1,503 @@
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusExtension.java:startup] Loading core version 0.8.1-SNAPSHOT
[BlueJ-Plus DEBUG JavaFX Application Thread @ DefaultBlueJPermissionHandler.java:loadPropertiesInto] Trying to load H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Dokumente\bluej\features.properties
[BlueJ-Plus DEBUG Thread-6 @ FileMonitorThread.java:run] FileMonitorThread started
[BlueJ-Plus DEBUG JavaFX Application Thread @ Provisioning.java:reload] State of provisioning is true
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loading module Provisioning
[BlueJ-Plus DEBUG JavaFX Application Thread @ Provisioning.java:reload] State of provisioning is true
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loaded module Provisioning
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loading module Subclasses
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loaded module Subclasses
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loading module UmlEditor
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loaded module UmlEditor
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loading module CodeCompletion
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loaded module CodeCompletion
[BlueJ-Plus DEBUG JavaFX Application Thread @ SnippetDefs.java:load] Snippet file does not exist. Loading defaults
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loading module Snippets
[BlueJ-Plus DEBUG JavaFX Application Thread @ SnippetDefs.java:load] Snippet file does not exist. Loading defaults
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusModuleProvider.java:add] Loaded module Snippets
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:onFrwChange] Found PkgMgrFrameWrapper for PkgMgrFrame(): Package: Project:Langlaufsimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:setupMenuBarHook] Installed MenuBar hook
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:setupObjectBenchHook] Installed ObjectBench hook
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:setupFXWindowHook] Installed FXWindow hook
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:updatePermissions] Updating permissions for PkgMgrFrame(): Package: Project:Langlaufsimulator
[BlueJ-Plus ERROR JavaFX Application Thread @ PkgMgrFrameMonitor.java:updateToolbar] Could not find bar in PkgMgrFrame(): Package: Project:Langlaufsimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:updatePermissions] Updating permissions for PkgMgrFrame(): Package: Project:Langlaufsimulator
[BlueJ-Plus ERROR JavaFX Application Thread @ PkgMgrFrameMonitor.java:updateToolbar] Could not find bar in PkgMgrFrame(): Package: Project:Langlaufsimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: List
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for List
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: List
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for List
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for List
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=316, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 316 327
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=402, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 402 411
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=478, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 478 486
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities] ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ Subclasses.java:ensureSubClassesMatches] Adding custom target : ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] wrp is List<ContentType>.ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target is List<ContentType>
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] wrp is List<ContentType>.ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target is List<ContentType>
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] BClass has parent. Values used instead are: Class name: List and subclass: ListNode
[BlueJ-Plus ERROR JavaFX Application Thread @ Subclasses.java:update] Class is a custom targetList$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] wrp is List<ContentType>.ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target is List<ContentType>
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] wrp is List<ContentType>.ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target is List<ContentType>
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] BClass has parent. Values used instead are: Class name: List and subclass: ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJ4BClassBridge.java:toExtClass] BClass is BClass: INVALID
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .List$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\List.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] List
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken first LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2475, length=5, text=first]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken first 2475 2480
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken last LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2525, length=4, text=last]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken last 2525 2529
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken current LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2576, length=7, text=current]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken current 2576 2583
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken List LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2643, length=4, text=List]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken List 2643 2647
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isEmpty LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2921, length=7, text=isEmpty]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isEmpty 2921 2928
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken hasAccess LocatableToken [beginLine=, hiddenBefore=null, type=69, position=3229, length=9, text=hasAccess]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken hasAccess 3229 3238
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken next LocatableToken [beginLine=, hiddenBefore=null, type=69, position=3705, length=4, text=next]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken next 3705 3709
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken toFirst LocatableToken [beginLine=, hiddenBefore=null, type=69, position=3948, length=7, text=toFirst]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken toFirst 3948 3955
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken toLast LocatableToken [beginLine=, hiddenBefore=null, type=69, position=4173, length=6, text=toLast]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken toLast 4173 4179
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getContent LocatableToken [beginLine=, hiddenBefore=null, type=69, position=4581, length=10, text=getContent]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getContent 4581 4591
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken setContent LocatableToken [beginLine=, hiddenBefore=null, type=69, position=5000, length=10, text=setContent]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken setContent 5000 5010
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken insert LocatableToken [beginLine=, hiddenBefore=null, type=69, position=5814, length=6, text=insert]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken insert 5814 5820
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken append LocatableToken [beginLine=, hiddenBefore=null, type=69, position=7186, length=6, text=append]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken append 7186 7192
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken concat LocatableToken [beginLine=, hiddenBefore=null, type=69, position=8104, length=6, text=concat]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken concat 8104 8110
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken remove LocatableToken [beginLine=, hiddenBefore=null, type=69, position=9108, length=6, text=remove]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken remove 9108 9114
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getPrevious LocatableToken [beginLine=, hiddenBefore=null, type=69, position=10298, length=11, text=getPrevious]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getPrevious 10298 10309
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in List
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Racesimulator$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Racesimulator.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Racesimulator LocatableToken [beginLine=, hiddenBefore=null, type=69, position=323, length=13, text=Racesimulator]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Racesimulator 323 336
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .ComparableContent$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\ComparableContent.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isGreater LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1256, length=9, text=isGreater]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isGreater 1256 1265
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isEqual LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1785, length=7, text=isEqual]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isEqual 1785 1792
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isLess LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2310, length=6, text=isLess]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isLess 2310 2316
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Athlete$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Athlete.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken name LocatableToken [beginLine=, hiddenBefore=null, type=69, position=202, length=4, text=name]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken name 202 206
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken startTime LocatableToken [beginLine=, hiddenBefore=null, type=69, position=219, length=9, text=startTime]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken startTime 219 228
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken endTime LocatableToken [beginLine=, hiddenBefore=null, type=69, position=241, length=7, text=endTime]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken endTime 241 248
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Athlete LocatableToken [beginLine=, hiddenBefore=null, type=69, position=328, length=7, text=Athlete]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Athlete 328 335
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getName LocatableToken [beginLine=, hiddenBefore=null, type=69, position=399, length=7, text=getName]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getName 399 406
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getStartTime LocatableToken [beginLine=, hiddenBefore=null, type=69, position=456, length=12, text=getStartTime]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getStartTime 456 468
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getEndTime LocatableToken [beginLine=, hiddenBefore=null, type=69, position=523, length=10, text=getEndTime]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getEndTime 523 533
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getFinalTime LocatableToken [beginLine=, hiddenBefore=null, type=69, position=586, length=12, text=getFinalTime]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getFinalTime 586 598
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken setStartTime LocatableToken [beginLine=, hiddenBefore=null, type=69, position=662, length=12, text=setStartTime]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken setStartTime 662 674
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken setEndTime LocatableToken [beginLine=, hiddenBefore=null, type=69, position=748, length=10, text=setEndTime]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken setEndTime 748 758
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isGreater LocatableToken [beginLine=, hiddenBefore=null, type=69, position=830, length=9, text=isGreater]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isGreater 830 839
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isEqual LocatableToken [beginLine=, hiddenBefore=null, type=69, position=938, length=7, text=isEqual]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isEqual 938 945
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isLess LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1045, length=6, text=isLess]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isLess 1045 1051
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Queue$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Queue.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken head LocatableToken [beginLine=, hiddenBefore=null, type=69, position=735, length=4, text=head]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken head 735 739
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken tail LocatableToken [beginLine=, hiddenBefore=null, type=69, position=760, length=4, text=tail]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken tail 760 764
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Queue LocatableToken [beginLine=, hiddenBefore=null, type=69, position=916, length=5, text=Queue]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Queue 916 921
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken isEmpty LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1170, length=7, text=isEmpty]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken isEmpty 1170 1177
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken enqueue LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1453, length=7, text=enqueue]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken enqueue 1453 1460
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken dequeue LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1833, length=7, text=dequeue]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken dequeue 1833 1840
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken front LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2269, length=5, text=front]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken front 2269 2274
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .BinarySearchTree$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\BinarySearchTree.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:updatePermissions] Updating permissions for PkgMgrFrame(): Package: Project:Langlaufsimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .List$ListNode in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\List.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken contentObject LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1194, length=13, text=contentObject]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken contentObject 1194 1207
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken next LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1230, length=4, text=next]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken next 1230 1234
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken ListNode LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1397, length=8, text=ListNode]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken ListNode 1397 1405
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getContentObject LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1633, length=16, text=getContentObject]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getContentObject 1633 1649
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken setContentObject LocatableToken [beginLine=, hiddenBefore=null, type=69, position=1837, length=16, text=setContentObject]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken setContentObject 1837 1853
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken getNextNode LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2073, length=11, text=getNextNode]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken getNextNode 2073 2084
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken setNextNode LocatableToken [beginLine=, hiddenBefore=null, type=69, position=2298, length=11, text=setNextNode]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken setNextNode 2298 2309
[BlueJ-Plus DEBUG JavaFX Application Thread @ PackageEditorWindowChangeMonitor.java:targetsSearchDeleted] Deletion swipe!
[BlueJ-Plus ERROR JavaFX Application Thread @ BlueJ4BClassBridge.java:toNativeTarget] no target for Queue
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Queue
[BlueJ-Plus ERROR JavaFX Application Thread @ SourceChangeEventEmitter.java:fireClassRemoved] Exception whilst handling event
java.lang.NullPointerException : null
at de.upb.bluej.plus.snippets.Snippets@bClassUpdate : 42 (Snippets.java)
at de.upb.bluej.plus.snippets.Snippets@classRemoved : 204 (Snippets.java)
at de.upb.bluej.extend.pkgeditor.SourceChangeEventEmitter@fireClassRemoved : 149 (SourceChangeEventEmitter.java)
at de.upb.bluej.extend.pkgeditor.PackageEditorMonitor$2@onChanged : 109 (PackageEditorMonitor.java)
at com.sun.javafx.collections.SetListenerHelper$Generic@fireValueChangedEvent : 327 (SetListenerHelper.java)
at com.sun.javafx.collections.SetListenerHelper@fireValueChangedEvent : 72 (SetListenerHelper.java)
at javafx.collections.FXCollections$SynchronizedObservableSet@lambda$new$0 : 1897 (FXCollections.java)
at javafx.collections.WeakSetChangeListener@onChanged : 88 (WeakSetChangeListener.java)
at com.sun.javafx.collections.SetListenerHelper$SingleChange@fireValueChangedEvent : 163 (SetListenerHelper.java)
at com.sun.javafx.collections.SetListenerHelper@fireValueChangedEvent : 72 (SetListenerHelper.java)
at com.sun.javafx.collections.ObservableSetWrapper@callObservers : 128 (ObservableSetWrapper.java)
at com.sun.javafx.collections.ObservableSetWrapper@access$100 : 39 (ObservableSetWrapper.java)
at com.sun.javafx.collections.ObservableSetWrapper$1@remove : 226 (ObservableSetWrapper.java)
at de.upb.bluej.extend.pkgeditor.PackageEditorWindowChangeMonitor@targetsSearchDeleted : 93 (PackageEditorWindowChangeMonitor.java)
at de.upb.bluej.extend.pkgeditor.PackageEditorWindowChangeMonitor@onChanged : 136 (PackageEditorWindowChangeMonitor.java)
at com.sun.javafx.collections.ListListenerHelper$Generic@fireValueChangedEvent : 329 (ListListenerHelper.java)
at com.sun.javafx.collections.ListListenerHelper@fireValueChangedEvent : 73 (ListListenerHelper.java)
at com.sun.javafx.collections.VetoableListDecorator@lambda$new$0 : 76 (VetoableListDecorator.java)
at com.sun.javafx.collections.ListListenerHelper$Generic@fireValueChangedEvent : 329 (ListListenerHelper.java)
at com.sun.javafx.collections.ListListenerHelper@fireValueChangedEvent : 73 (ListListenerHelper.java)
at javafx.collections.ObservableListBase@fireChange : 233 (ObservableListBase.java)
at javafx.collections.ListChangeBuilder@commit : 482 (ListChangeBuilder.java)
at javafx.collections.ListChangeBuilder@endChange : 541 (ListChangeBuilder.java)
at javafx.collections.ObservableListBase@endChange : 205 (ObservableListBase.java)
at javafx.collections.ModifiableObservableListBase@remove : 183 (ModifiableObservableListBase.java)
at com.sun.javafx.collections.VetoableListDecorator@remove : 332 (VetoableListDecorator.java)
at com.sun.javafx.collections.VetoableListDecorator@remove : 221 (VetoableListDecorator.java)
at bluej.pkgmgr.PackageEditor@graphChanged : 434 (PackageEditor.java)
at bluej.pkgmgr.Package@fireChangedEvent : 630 (Package.java)
at bluej.pkgmgr.Package@removeTarget : 1845 (Package.java)
at bluej.pkgmgr.target.ClassTarget@remove : 2581 (ClassTarget.java)
at bluej.pkgmgr.target.ClassTarget$RemoveAction@actionPerformed : 2282 (ClassTarget.java)
at bluej.pkgmgr.target.ClassTarget$RemoveAction@lambda$new$0 : 2272 (ClassTarget.java)
at com.sun.javafx.event.CompositeEventHandler@dispatchBubblingEvent : 86 (CompositeEventHandler.java)
at com.sun.javafx.event.EventHandlerManager@dispatchBubblingEvent : 238 (EventHandlerManager.java)
at com.sun.javafx.event.EventHandlerManager@dispatchBubblingEvent : 191 (EventHandlerManager.java)
at com.sun.javafx.event.BasicEventDispatcher@dispatchEvent : 58 (BasicEventDispatcher.java)
at com.sun.javafx.event.EventDispatchChainImpl@dispatchEvent : 114 (EventDispatchChainImpl.java)
at com.sun.javafx.event.EventUtil@fireEventImpl : 74 (EventUtil.java)
at com.sun.javafx.event.EventUtil@fireEvent : 49 (EventUtil.java)
at javafx.event.Event@fireEvent : 198 (Event.java)
at javafx.scene.control.MenuItem@fire : 465 (MenuItem.java)
at com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer@doSelect : 1380 (ContextMenuContent.java)
at com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer@lambda$createChildren$12 : 1333 (ContextMenuContent.java)
at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord@handleBubblingEvent : 218 (CompositeEventHandler.java)
at com.sun.javafx.event.CompositeEventHandler@dispatchBubblingEvent : 80 (CompositeEventHandler.java)
at com.sun.javafx.event.EventHandlerManager@dispatchBubblingEvent : 238 (EventHandlerManager.java)
at com.sun.javafx.event.EventHandlerManager@dispatchBubblingEvent : 191 (EventHandlerManager.java)
at com.sun.javafx.event.CompositeEventDispatcher@dispatchBubblingEvent : 59 (CompositeEventDispatcher.java)
at com.sun.javafx.event.BasicEventDispatcher@dispatchEvent : 58 (BasicEventDispatcher.java)
at com.sun.javafx.event.EventDispatchChainImpl@dispatchEvent : 114 (EventDispatchChainImpl.java)
at com.sun.javafx.event.BasicEventDispatcher@dispatchEvent : 56 (BasicEventDispatcher.java)
at com.sun.javafx.event.EventDispatchChainImpl@dispatchEvent : 114 (EventDispatchChainImpl.java)
at com.sun.javafx.event.BasicEventDispatcher@dispatchEvent : 56 (BasicEventDispatcher.java)
at com.sun.javafx.event.EventDispatchChainImpl@dispatchEvent : 114 (EventDispatchChainImpl.java)
at com.sun.javafx.event.BasicEventDispatcher@dispatchEvent : 56 (BasicEventDispatcher.java)
at com.sun.javafx.event.EventDispatchChainImpl@dispatchEvent : 114 (EventDispatchChainImpl.java)
at com.sun.javafx.event.EventUtil@fireEventImpl : 74 (EventUtil.java)
at com.sun.javafx.event.EventUtil@fireEvent : 54 (EventUtil.java)
at javafx.event.Event@fireEvent : 198 (Event.java)
at javafx.scene.Scene$MouseHandler@process : 3851 (Scene.java)
at javafx.scene.Scene$MouseHandler@access$1200 : 3579 (Scene.java)
at javafx.scene.Scene@processMouseEvent : 1849 (Scene.java)
at javafx.scene.Scene$ScenePeerListener@mouseEvent : 2588 (Scene.java)
at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification@run : 397 (GlassViewEventHandler.java)
at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification@run : 295 (GlassViewEventHandler.java)
at java.security.AccessController@doPrivileged : -2 (AccessController.java)
at com.sun.javafx.tk.quantum.GlassViewEventHandler@lambda$handleMouseEvent$2 : 434 (GlassViewEventHandler.java)
at com.sun.javafx.tk.quantum.QuantumToolkit@runWithoutRenderLock : 390 (QuantumToolkit.java)
at com.sun.javafx.tk.quantum.GlassViewEventHandler@handleMouseEvent : 433 (GlassViewEventHandler.java)
at com.sun.glass.ui.View@handleMouseEvent : 556 (View.java)
at com.sun.glass.ui.View@notifyMouse : 942 (View.java)
at com.sun.glass.ui.win.WinApplication@_runLoop : -2 (WinApplication.java)
at com.sun.glass.ui.win.WinApplication@lambda$runLoop$3 : 174 (WinApplication.java)
at java.lang.Thread@run : 834 (Thread.java)
[BlueJ-Plus DEBUG JavaFX Application Thread @ PackageEditorWindowChangeMonitor.java:targetsSearchDeleted] Deletion swipe!
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Queue
[BlueJ-Plus ERROR JavaFX Application Thread @ SourceChangeEventEmitter.java:fireClassRemoved] Exception whilst handling event
java.lang.NullPointerException : null
at de.upb.bluej.plus.snippets.Snippets@bClassUpdate : 42 (Snippets.java)
at de.upb.bluej.plus.snippets.Snippets@classRemoved : 204 (Snippets.java)
at de.upb.bluej.extend.pkgeditor.SourceChangeEventEmitter@fireClassRemoved : 149 (SourceChangeEventEmitter.java)
at de.upb.bluej.extend.pkgeditor.FileMonitorThread@lambda$0 : 289 (FileMonitorThread.java)
at com.sun.javafx.application.PlatformImpl@lambda$runLater$10 : 428 (PlatformImpl.java)
at java.security.AccessController@doPrivileged : -2 (AccessController.java)
at com.sun.javafx.application.PlatformImpl@lambda$runLater$11 : 427 (PlatformImpl.java)
at com.sun.glass.ui.InvokeLaterDispatcher$Future@run : 96 (InvokeLaterDispatcher.java)
at com.sun.glass.ui.win.WinApplication@_runLoop : -2 (WinApplication.java)
at com.sun.glass.ui.win.WinApplication@lambda$runLoop$3 : 174 (WinApplication.java)
at java.lang.Thread@run : 834 (Thread.java)
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=316, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 316 327
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=402, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 402 411
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=505, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 505 513
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=316, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 316 327
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=402, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 402 411
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=526, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 526 534
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=316, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 316 327
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=402, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 402 411
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=526, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 526 534
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=244, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 244 255
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=330, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 330 339
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=454, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 454 462
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken runners LocatableToken [beginLine=, hiddenBefore=null, type=69, position=187, length=7, text=runners]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken runners 187 194
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=278, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 278 289
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=364, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 364 373
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=488, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 488 496
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken runners LocatableToken [beginLine=, hiddenBefore=null, type=69, position=187, length=7, text=runners]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken runners 187 194
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=278, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 278 289
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=364, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 364 373
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=491, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 491 499
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken runners LocatableToken [beginLine=, hiddenBefore=null, type=69, position=187, length=7, text=runners]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken runners 187 194
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=278, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 278 289
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=364, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 364 373
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=500, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 500 508
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ SafeBClass.java:fromBClass] Converting BClass. Package: , Class name: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Parent target called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgEditorTargetExtend.java:getParentTarget] Not a custom target BClass: Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:getAllEntities]
[BlueJ-Plus DEBUG JavaFX Application Thread @ UmlEditor.java:updateTargetPane] Trying to parse for [SafeBClass: .Competition$null in H:\Dokumente\GitHub\Langlaufsimulator\Langlaufsimulator\Competition.java]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken runners LocatableToken [beginLine=, hiddenBefore=null, type=69, position=187, length=7, text=runners]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken runners 187 194
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken Competition LocatableToken [beginLine=, hiddenBefore=null, type=69, position=278, length=11, text=Competition]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken Competition 278 289
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken newRunner LocatableToken [beginLine=, hiddenBefore=null, type=69, position=364, length=9, text=newRunner]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken newRunner 364 373
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] nameToken simulate LocatableToken [beginLine=, hiddenBefore=null, type=69, position=518, length=8, text=simulate]
[BlueJ-Plus DEBUG JavaFX Application Thread @ ClassInfoFrontendBlueJ.java:reparse] identToken simulate 518 526
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : exists in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for List
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdate] called for List$ListNode
[BlueJ-Plus DEBUG JavaFX Application Thread @ PkgMgrFrameMonitor.java:onFrwChange] Removed Wrapper for PkgMgrFrame(): empty
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : absent in BinarySearchTree
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : absent in ComparableContent
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : absent in Competition
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : absent in Racesimulator
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : absent in Athlete
[BlueJ-Plus DEBUG JavaFX Application Thread @ Snippets.java:bClassUpdateStateSynchronized] Button state : absent in List
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusExtension.java:terminate] Terminating plugin
[BlueJ-Plus DEBUG JavaFX Application Thread @ BlueJExtend.java:teardown] terminating PluginBase
[BlueJ-Plus DEBUG JavaFX Application Thread @ PlusExtension.java:terminate] Plugin terminated
[BlueJ-Plus ERROR Thread-6 @ FileMonitorThread.java:run] java.lang.InterruptedException
[BlueJ-Plus DEBUG Thread-6 @ FileMonitorThread.java:run] FileMonitorThread terminated

View File

@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<packages javaHome="C:\Program Files\BlueJ\jdk" version="4.2.2">
<package name="java">
<package name="io"/>
<package name="rmi">
<package name="dgc"/>
<package name="registry"/>
<package name="server"/>
<package name="activation"/>
</package>
<package name="sql"/>
<package name="security">
<package name="interfaces"/>
<package name="cert"/>
<package name="acl"/>
<package name="spec"/>
</package>
<package name="util">
<package name="zip"/>
<package name="regex"/>
<package name="stream"/>
<package name="function"/>
<package name="concurrent">
<package name="atomic"/>
<package name="locks"/>
</package>
<package name="logging"/>
<package name="jar"/>
<package name="spi"/>
<package name="prefs"/>
</package>
<package name="nio">
<package name="charset">
<package name="spi"/>
</package>
<package name="file">
<package name="attribute"/>
<package name="spi"/>
</package>
<package name="channels">
<package name="spi"/>
</package>
</package>
<package name="beans">
<package name="beancontext"/>
</package>
<package name="math"/>
<package name="text">
<package name="spi"/>
</package>
<package name="time">
<package name="zone"/>
<package name="format"/>
<package name="chrono"/>
<package name="temporal"/>
</package>
<package name="lang">
<package name="annotation"/>
<package name="ref"/>
<package name="reflect"/>
<package name="management"/>
<package name="module"/>
<package name="instrument"/>
<package name="invoke"/>
</package>
<package name="net">
<package name="http"/>
<package name="spi"/>
</package>
<package name="applet"/>
<package name="awt">
<package name="image">
<package name="renderable"/>
</package>
<package name="print"/>
<package name="desktop"/>
<package name="color"/>
<package name="im">
<package name="spi"/>
</package>
<package name="peer"/>
<package name="dnd">
<package name="peer"/>
</package>
<package name="event"/>
<package name="geom"/>
<package name="datatransfer"/>
<package name="font"/>
</package>
</package>
</packages>

View File

@@ -0,0 +1,2 @@
#Moe-Editor-Eigenschaften. Einstellungen in dieser Datei haben Vorrang vor "moe.defs"
#Thu Dec 03 11:10:42 CET 2020

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,43 @@
#BlueJ class context
comment0.target=List
comment0.text=\r\n\ <p>\r\n\ Materialien\ zu\ den\ zentralen\ NRW-Abiturpruefungen\ im\ Fach\ Informatik\ ab\ 2018\r\n\ </p>\r\n\ <p>\r\n\ Generische\ Klasse\ List<ContentType>\r\n\ </p>\r\n\ <p>\r\n\ Objekt\ der\ generischen\ Klasse\ List\ verwalten\ beliebig\ viele\ linear\r\n\ angeordnete\ Objekte\ vom\ Typ\ ContentType.\ Auf\ hoechstens\ ein\ Listenobjekt,\r\n\ aktuellesObjekt\ genannt,\ kann\ jeweils\ zugegriffen\ werden.<br\ />\r\n\ Wenn\ eine\ Liste\ leer\ ist,\ vollstaendig\ durchlaufen\ wurde\ oder\ das\ aktuelle\r\n\ Objekt\ am\ Ende\ der\ Liste\ geloescht\ wurde,\ gibt\ es\ kein\ aktuelles\ Objekt.<br\ />\r\n\ Das\ erste\ oder\ das\ letzte\ Objekt\ einer\ Liste\ koennen\ durch\ einen\ Auftrag\ zum\r\n\ aktuellen\ Objekt\ gemacht\ werden.\ Ausserdem\ kann\ das\ dem\ aktuellen\ Objekt\r\n\ folgende\ Listenobjekt\ zum\ neuen\ aktuellen\ Objekt\ werden.\ <br\ />\r\n\ Das\ aktuelle\ Objekt\ kann\ gelesen,\ veraendert\ oder\ geloescht\ werden.\ Ausserdem\r\n\ kann\ vor\ dem\ aktuellen\ Objekt\ ein\ Listenobjekt\ eingefuegt\ werden.\r\n\ </p>\r\n\ \r\n\ @author\ Qualitaets-\ und\ UnterstuetzungsAgentur\ -\ Landesinstitut\ fuer\ Schule\r\n\ @version\ Generisch_06\ 2015-10-25\r\n
comment1.params=
comment1.target=List()
comment1.text=\r\n\ Eine\ leere\ Liste\ wird\ erzeugt.\r\n
comment10.params=pContent
comment10.target=void\ append(java.lang.Object)
comment10.text=\r\n\ Falls\ pContent\ gleich\ null\ ist,\ geschieht\ nichts.<br\ />\r\n\ Ansonsten\ wird\ ein\ neues\ Objekt\ pContent\ am\ Ende\ der\ Liste\ eingefuegt.\r\n\ Das\ aktuelle\ Objekt\ bleibt\ unveraendert.\ <br\ />\r\n\ Wenn\ die\ Liste\ leer\ ist,\ wird\ das\ Objekt\ pContent\ in\ die\ Liste\ eingefuegt\r\n\ und\ es\ gibt\ weiterhin\ kein\ aktuelles\ Objekt\ (hasAccess()\ \=\=\ false).\r\n\ \r\n\ @param\ pContent\r\n\ \ \ \ \ \ \ \ \ \ \ \ das\ anzuhaengende\ Objekt\ vom\ Typ\ ContentType\r\n
comment11.params=pList
comment11.target=void\ concat(List)
comment11.text=\r\n\ Falls\ es\ sich\ bei\ der\ Liste\ und\ pList\ um\ dasselbe\ Objekt\ handelt,\r\n\ pList\ null\ oder\ eine\ leere\ Liste\ ist,\ geschieht\ nichts.<br\ />\r\n\ Ansonsten\ wird\ die\ Liste\ pList\ an\ die\ aktuelle\ Liste\ angehaengt.\r\n\ Anschliessend\ wird\ pList\ eine\ leere\ Liste.\ Das\ aktuelle\ Objekt\ bleibt\r\n\ unveraendert.\ Insbesondere\ bleibt\ hasAccess\ identisch.\r\n\ \r\n\ @param\ pList\r\n\ \ \ \ \ \ \ \ \ \ \ \ die\ am\ Ende\ anzuhaengende\ Liste\ vom\ Typ\ List<ContentType>\r\n
comment12.params=
comment12.target=void\ remove()
comment12.text=\r\n\ Wenn\ die\ Liste\ leer\ ist\ oder\ es\ kein\ aktuelles\ Objekt\ gibt\ (hasAccess()\r\n\ \=\=\ false),\ geschieht\ nichts.<br\ />\r\n\ Falls\ es\ ein\ aktuelles\ Objekt\ gibt\ (hasAccess()\ \=\=\ true),\ wird\ das\r\n\ aktuelle\ Objekt\ geloescht\ und\ das\ Objekt\ hinter\ dem\ geloeschten\ Objekt\r\n\ wird\ zum\ aktuellen\ Objekt.\ <br\ />\r\n\ Wird\ das\ Objekt,\ das\ am\ Ende\ der\ Liste\ steht,\ geloescht,\ gibt\ es\ kein\r\n\ aktuelles\ Objekt\ mehr.\r\n
comment13.params=pNode
comment13.target=List.ListNode\ getPrevious(List.ListNode)
comment13.text=\r\n\ Liefert\ den\ Vorgaengerknoten\ des\ Knotens\ pNode.\ Ist\ die\ Liste\ leer,\ pNode\r\n\ \=\=\ null,\ pNode\ nicht\ in\ der\ Liste\ oder\ pNode\ der\ erste\ Knoten\ der\ Liste,\r\n\ wird\ null\ zurueckgegeben.\r\n\r\n\ @param\ pNode\r\n\ \ \ \ \ \ \ \ \ der\ Knoten,\ dessen\ Vorgaenger\ zurueckgegeben\ werden\ soll\r\n\ @return\ der\ Vorgaenger\ des\ Knotens\ pNode\ oder\ null,\ falls\ die\ Liste\ leer\ ist,\r\n\ \ \ \ \ \ \ \ \ pNode\ \=\=\ null\ ist,\ pNode\ nicht\ in\ der\ Liste\ ist\ oder\ pNode\ der\ erste\ Knoten\r\n\ \ \ \ \ \ \ \ \ der\ Liste\ ist\r\n
comment2.params=
comment2.target=boolean\ isEmpty()
comment2.text=\r\n\ Die\ Anfrage\ liefert\ den\ Wert\ true,\ wenn\ die\ Liste\ keine\ Objekte\ enthaelt,\r\n\ sonst\ liefert\ sie\ den\ Wert\ false.\r\n\ \r\n\ @return\ true,\ wenn\ die\ Liste\ leer\ ist,\ sonst\ false\r\n
comment3.params=
comment3.target=boolean\ hasAccess()
comment3.text=\r\n\ Die\ Anfrage\ liefert\ den\ Wert\ true,\ wenn\ es\ ein\ aktuelles\ Objekt\ gibt,\r\n\ sonst\ liefert\ sie\ den\ Wert\ false.\r\n\ \r\n\ @return\ true,\ falls\ Zugriff\ moeglich,\ sonst\ false\r\n
comment4.params=
comment4.target=void\ next()
comment4.text=\r\n\ Falls\ die\ Liste\ nicht\ leer\ ist,\ es\ ein\ aktuelles\ Objekt\ gibt\ und\ dieses\r\n\ nicht\ das\ letzte\ Objekt\ der\ Liste\ ist,\ wird\ das\ dem\ aktuellen\ Objekt\ in\r\n\ der\ Liste\ folgende\ Objekt\ zum\ aktuellen\ Objekt,\ andernfalls\ gibt\ es\ nach\r\n\ Ausfuehrung\ des\ Auftrags\ kein\ aktuelles\ Objekt,\ d.h.\ hasAccess()\ liefert\r\n\ den\ Wert\ false.\r\n
comment5.params=
comment5.target=void\ toFirst()
comment5.text=\r\n\ Falls\ die\ Liste\ nicht\ leer\ ist,\ wird\ das\ erste\ Objekt\ der\ Liste\ aktuelles\r\n\ Objekt.\ Ist\ die\ Liste\ leer,\ geschieht\ nichts.\r\n
comment6.params=
comment6.target=void\ toLast()
comment6.text=\r\n\ Falls\ die\ Liste\ nicht\ leer\ ist,\ wird\ das\ letzte\ Objekt\ der\ Liste\r\n\ aktuelles\ Objekt.\ Ist\ die\ Liste\ leer,\ geschieht\ nichts.\r\n
comment7.params=
comment7.target=java.lang.Object\ getContent()
comment7.text=\r\n\ Falls\ es\ ein\ aktuelles\ Objekt\ gibt\ (hasAccess()\ \=\=\ true),\ wird\ das\r\n\ aktuelle\ Objekt\ zurueckgegeben,\ andernfalls\ (hasAccess()\ \=\=\ false)\ gibt\r\n\ die\ Anfrage\ den\ Wert\ null\ zurueck.\r\n\ \r\n\ @return\ das\ aktuelle\ Objekt\ (vom\ Typ\ ContentType)\ oder\ null,\ wenn\ es\r\n\ \ \ \ \ \ \ \ \ kein\ aktuelles\ Objekt\ gibt\r\n
comment8.params=pContent
comment8.target=void\ setContent(java.lang.Object)
comment8.text=\r\n\ Falls\ es\ ein\ aktuelles\ Objekt\ gibt\ (hasAccess()\ \=\=\ true)\ und\ pContent\r\n\ ungleich\ null\ ist,\ wird\ das\ aktuelle\ Objekt\ durch\ pContent\ ersetzt.\ Sonst\r\n\ geschieht\ nichts.\r\n\ \r\n\ @param\ pContent\r\n\ \ \ \ \ \ \ \ \ \ \ \ das\ zu\ schreibende\ Objekt\ vom\ Typ\ ContentType\r\n
comment9.params=pContent
comment9.target=void\ insert(java.lang.Object)
comment9.text=\r\n\ Falls\ es\ ein\ aktuelles\ Objekt\ gibt\ (hasAccess()\ \=\=\ true),\ wird\ ein\ neues\r\n\ Objekt\ vor\ dem\ aktuellen\ Objekt\ in\ die\ Liste\ eingefuegt.\ Das\ aktuelle\r\n\ Objekt\ bleibt\ unveraendert.\ <br\ />\r\n\ Wenn\ die\ Liste\ leer\ ist,\ wird\ pContent\ in\ die\ Liste\ eingefuegt\ und\ es\r\n\ gibt\ weiterhin\ kein\ aktuelles\ Objekt\ (hasAccess()\ \=\=\ false).\ <br\ />\r\n\ Falls\ es\ kein\ aktuelles\ Objekt\ gibt\ (hasAccess()\ \=\=\ false)\ und\ die\ Liste\r\n\ nicht\ leer\ ist\ oder\ pContent\ gleich\ null\ ist,\ geschieht\ nichts.\r\n\ \r\n\ @param\ pContent\r\n\ \ \ \ \ \ \ \ \ \ \ \ das\ einzufuegende\ Objekt\ vom\ Typ\ ContentType\r\n
numComments=14

345
Langlaufsimulator/List.java Normal file
View File

@@ -0,0 +1,345 @@
/**
* <p>
* Materialien zu den zentralen NRW-Abiturpruefungen im Fach Informatik ab 2018
* </p>
* <p>
* Generische Klasse List<ContentType>
* </p>
* <p>
* Objekt der generischen Klasse List verwalten beliebig viele linear
* angeordnete Objekte vom Typ ContentType. Auf hoechstens ein Listenobjekt,
* aktuellesObjekt genannt, kann jeweils zugegriffen werden.<br />
* Wenn eine Liste leer ist, vollstaendig durchlaufen wurde oder das aktuelle
* Objekt am Ende der Liste geloescht wurde, gibt es kein aktuelles Objekt.<br />
* Das erste oder das letzte Objekt einer Liste koennen durch einen Auftrag zum
* aktuellen Objekt gemacht werden. Ausserdem kann das dem aktuellen Objekt
* folgende Listenobjekt zum neuen aktuellen Objekt werden. <br />
* Das aktuelle Objekt kann gelesen, veraendert oder geloescht werden. Ausserdem
* kann vor dem aktuellen Objekt ein Listenobjekt eingefuegt werden.
* </p>
*
* @author Qualitaets- und UnterstuetzungsAgentur - Landesinstitut fuer Schule
* @version Generisch_06 2015-10-25
*/
public class List<ContentType> {
/* --------- Anfang der privaten inneren Klasse -------------- */
private class ListNode {
private ContentType contentObject;
private ListNode next;
/**
* Ein neues Objekt wird erschaffen. Der Verweis ist leer.
*
* @param pContent das Inhaltsobjekt vom Typ ContentType
*/
private ListNode(ContentType pContent) {
contentObject = pContent;
next = null;
}
/**
* Der Inhalt des Knotens wird zurueckgeliefert.
*
* @return das Inhaltsobjekt des Knotens
*/
public ContentType getContentObject() {
return contentObject;
}
/**
* Der Inhalt dieses Kontens wird gesetzt.
*
* @param pContent das Inhaltsobjekt vom Typ ContentType
*/
public void setContentObject(ContentType pContent) {
contentObject = pContent;
}
/**
* Der Nachfolgeknoten wird zurueckgeliefert.
*
* @return das Objekt, auf das der aktuelle Verweis zeigt
*/
public ListNode getNextNode() {
return this.next;
}
/**
* Der Verweis wird auf das Objekt, das als Parameter uebergeben
* wird, gesetzt.
*
* @param pNext der Nachfolger des Knotens
*/
public void setNextNode(ListNode pNext) {
this.next = pNext;
}
}
/* ----------- Ende der privaten inneren Klasse -------------- */
// erstes Element der Liste
ListNode first;
// letztes Element der Liste
ListNode last;
// aktuelles Element der Liste
ListNode current;
/**
* Eine leere Liste wird erzeugt.
*/
public List() {
first = null;
last = null;
current = null;
}
/**
* Die Anfrage liefert den Wert true, wenn die Liste keine Objekte enthaelt,
* sonst liefert sie den Wert false.
*
* @return true, wenn die Liste leer ist, sonst false
*/
public boolean isEmpty() {
// Die Liste ist leer, wenn es kein erstes Element gibt.
return first == null;
}
/**
* Die Anfrage liefert den Wert true, wenn es ein aktuelles Objekt gibt,
* sonst liefert sie den Wert false.
*
* @return true, falls Zugriff moeglich, sonst false
*/
public boolean hasAccess() {
// Es gibt keinen Zugriff, wenn current auf kein Element verweist.
return current != null;
}
/**
* Falls die Liste nicht leer ist, es ein aktuelles Objekt gibt und dieses
* nicht das letzte Objekt der Liste ist, wird das dem aktuellen Objekt in
* der Liste folgende Objekt zum aktuellen Objekt, andernfalls gibt es nach
* Ausfuehrung des Auftrags kein aktuelles Objekt, d.h. hasAccess() liefert
* den Wert false.
*/
public void next() {
if (this.hasAccess()) {
current = current.getNextNode();
}
}
/**
* Falls die Liste nicht leer ist, wird das erste Objekt der Liste aktuelles
* Objekt. Ist die Liste leer, geschieht nichts.
*/
public void toFirst() {
if (!isEmpty()) {
current = first;
}
}
/**
* Falls die Liste nicht leer ist, wird das letzte Objekt der Liste
* aktuelles Objekt. Ist die Liste leer, geschieht nichts.
*/
public void toLast() {
if (!isEmpty()) {
current = last;
}
}
/**
* Falls es ein aktuelles Objekt gibt (hasAccess() == true), wird das
* aktuelle Objekt zurueckgegeben, andernfalls (hasAccess() == false) gibt
* die Anfrage den Wert null zurueck.
*
* @return das aktuelle Objekt (vom Typ ContentType) oder null, wenn es
* kein aktuelles Objekt gibt
*/
public ContentType getContent() {
if (this.hasAccess()) {
return current.getContentObject();
} else {
return null;
}
}
/**
* Falls es ein aktuelles Objekt gibt (hasAccess() == true) und pContent
* ungleich null ist, wird das aktuelle Objekt durch pContent ersetzt. Sonst
* geschieht nichts.
*
* @param pContent
* das zu schreibende Objekt vom Typ ContentType
*/
public void setContent(ContentType pContent) {
// Nichts tun, wenn es keinen Inhalt oder kein aktuelles Element gibt.
if (pContent != null && this.hasAccess()) {
current.setContentObject(pContent);
}
}
/**
* Falls es ein aktuelles Objekt gibt (hasAccess() == true), wird ein neues
* Objekt vor dem aktuellen Objekt in die Liste eingefuegt. Das aktuelle
* Objekt bleibt unveraendert. <br />
* Wenn die Liste leer ist, wird pContent in die Liste eingefuegt und es
* gibt weiterhin kein aktuelles Objekt (hasAccess() == false). <br />
* Falls es kein aktuelles Objekt gibt (hasAccess() == false) und die Liste
* nicht leer ist oder pContent gleich null ist, geschieht nichts.
*
* @param pContent
* das einzufuegende Objekt vom Typ ContentType
*/
public void insert(ContentType pContent) {
if (pContent != null) { // Nichts tun, wenn es keinen Inhalt gibt.
if (this.hasAccess()) { // Fall: Es gibt ein aktuelles Element.
// Neuen Knoten erstellen.
ListNode newNode = new ListNode(pContent);
if (current != first) { // Fall: Nicht an erster Stelle einfuegen.
ListNode previous = this.getPrevious(current);
newNode.setNextNode(previous.getNextNode());
previous.setNextNode(newNode);
} else { // Fall: An erster Stelle einfuegen.
newNode.setNextNode(first);
first = newNode;
}
} else { //Fall: Es gibt kein aktuelles Element.
if (this.isEmpty()) { // Fall: In leere Liste einfuegen.
// Neuen Knoten erstellen.
ListNode newNode = new ListNode(pContent);
first = newNode;
last = newNode;
}
}
}
}
/**
* Falls pContent gleich null ist, geschieht nichts.<br />
* Ansonsten wird ein neues Objekt pContent am Ende der Liste eingefuegt.
* Das aktuelle Objekt bleibt unveraendert. <br />
* Wenn die Liste leer ist, wird das Objekt pContent in die Liste eingefuegt
* und es gibt weiterhin kein aktuelles Objekt (hasAccess() == false).
*
* @param pContent
* das anzuhaengende Objekt vom Typ ContentType
*/
public void append(ContentType pContent) {
if (pContent != null) { // Nichts tun, wenn es keine Inhalt gibt.
if (this.isEmpty()) { // Fall: An leere Liste anfuegen.
this.insert(pContent);
} else { // Fall: An nicht-leere Liste anfuegen.
// Neuen Knoten erstellen.
ListNode newNode = new ListNode(pContent);
last.setNextNode(newNode);
last = newNode; // Letzten Knoten aktualisieren.
}
}
}
/**
* Falls es sich bei der Liste und pList um dasselbe Objekt handelt,
* pList null oder eine leere Liste ist, geschieht nichts.<br />
* Ansonsten wird die Liste pList an die aktuelle Liste angehaengt.
* Anschliessend wird pList eine leere Liste. Das aktuelle Objekt bleibt
* unveraendert. Insbesondere bleibt hasAccess identisch.
*
* @param pList
* die am Ende anzuhaengende Liste vom Typ List<ContentType>
*/
public void concat(List<ContentType> pList) {
if (pList != this && pList != null && !pList.isEmpty()) { // Nichts tun,
// wenn pList und this identisch, pList leer oder nicht existent.
if (this.isEmpty()) { // Fall: An leere Liste anfuegen.
this.first = pList.first;
this.last = pList.last;
} else { // Fall: An nicht-leere Liste anfuegen.
this.last.setNextNode(pList.first);
this.last = pList.last;
}
// Liste pList loeschen.
pList.first = null;
pList.last = null;
pList.current = null;
}
}
/**
* Wenn die Liste leer ist oder es kein aktuelles Objekt gibt (hasAccess()
* == false), geschieht nichts.<br />
* Falls es ein aktuelles Objekt gibt (hasAccess() == true), wird das
* aktuelle Objekt geloescht und das Objekt hinter dem geloeschten Objekt
* wird zum aktuellen Objekt. <br />
* Wird das Objekt, das am Ende der Liste steht, geloescht, gibt es kein
* aktuelles Objekt mehr.
*/
public void remove() {
// Nichts tun, wenn es kein aktuelle Element gibt oder die Liste leer ist.
if (this.hasAccess() && !this.isEmpty()) {
if (current == first) {
first = first.getNextNode();
} else {
ListNode previous = this.getPrevious(current);
if (current == last) {
last = previous;
}
previous.setNextNode(current.getNextNode());
}
ListNode temp = current.getNextNode();
current.setContentObject(null);
current.setNextNode(null);
current = temp;
//Beim loeschen des letzten Elements last auf null setzen.
if (this.isEmpty()) {
last = null;
}
}
}
/**
* Liefert den Vorgaengerknoten des Knotens pNode. Ist die Liste leer, pNode
* == null, pNode nicht in der Liste oder pNode der erste Knoten der Liste,
* wird null zurueckgegeben.
*
* @param pNode
* der Knoten, dessen Vorgaenger zurueckgegeben werden soll
* @return der Vorgaenger des Knotens pNode oder null, falls die Liste leer ist,
* pNode == null ist, pNode nicht in der Liste ist oder pNode der erste Knoten
* der Liste ist
*/
private ListNode getPrevious(ListNode pNode) {
if (pNode != null && pNode != first && !this.isEmpty()) {
ListNode temp = first;
while (temp != null && temp.getNextNode() != pNode) {
temp = temp.getNextNode();
}
return temp;
} else {
return null;
}
}
}

View File

@@ -0,0 +1,14 @@
------------------------------------------------------------------------
Dies ist die README-Datei des Projekts. Hier sollten Sie Ihr Projekt
beschreiben.
Erzählen Sie dem Leser (jemand, der nichts über dieses Projekt weiss),
alles, was er/sie wissen muss. Üblicherweise sollte der Kommentar
zumindest die folgenden Angaben umfassen:
------------------------------------------------------------------------
PROJEKTBEZEICHNUNG:
PROJEKTZWECK:
VERSION oder DATUM:
WIE IST DAS PROJEKT ZU STARTEN:
AUTOR(EN):
BENUTZERHINWEISE:

Binary file not shown.

View File

@@ -0,0 +1,7 @@
#BlueJ class context
comment0.target=Racesimulator
comment0.text=\r\n\ Beschreiben\ Sie\ hier\ die\ Klasse\ Racesimulator.\r\n\ \r\n\ @author\ (Ihr\ Name)\ \r\n\ @version\ (eine\ Versionsnummer\ oder\ ein\ Datum)\r\n
comment1.params=
comment1.target=Racesimulator()
comment1.text=\r\n\ Konstruktor\ f\u00FCr\ Objekte\ der\ Klasse\ Racesimulator\r\n
numComments=2

View File

@@ -0,0 +1,25 @@
/**
* Beschreiben Sie hier die Klasse Racesimulator.
*
* @author (Ihr Name)
* @version (eine Versionsnummer oder ein Datum)
*/
public class Racesimulator {
// Attribute
// Implementieren sie hier die Attribute der Klasse
/**
* Konstruktor für Objekte der Klasse Racesimulator
*/
public Racesimulator() {
// ggf. Instanzvariable initialisieren
}
// public Athlete simulate(Athlete pAthlete){
// Random
// }
}

View File

@@ -0,0 +1,83 @@
#BlueJ package file
dependency1.from=BinarySearchTree
dependency1.to=ComparableContent
dependency1.type=UsesDependency
dependency2.from=Competition
dependency2.to=List
dependency2.type=UsesDependency
dependency3.from=Competition
dependency3.to=Athlete
dependency3.type=UsesDependency
editor.fx.0.height=738
editor.fx.0.width=816
editor.fx.0.x=232
editor.fx.0.y=82
objectbench.height=138
objectbench.width=1256
package.divider.horizontal=0.6
package.divider.vertical=0.8390677025527192
package.editor.height=749
package.editor.width=1132
package.editor.x=0
package.editor.y=0
package.frame.height=1000
package.frame.width=1296
package.numDependencies=3
package.numTargets=7
package.showExtends=true
package.showUses=true
project.charset=UTF-8
readme.height=58
readme.name=@README
readme.width=47
readme.x=10
readme.y=10
target1.height=50
target1.name=Competition
target1.showInterface=false
target1.type=ClassTarget
target1.width=100
target1.x=540
target1.y=320
target2.height=50
target2.name=List$ListNode
target2.showInterface=false
target2.type=SubTargetClassRole
target2.width=200
target2.x=250
target2.y=210
target3.height=50
target3.name=List
target3.showInterface=false
target3.type=ClassTarget
target3.width=150
target3.x=60
target3.y=210
target4.height=50
target4.name=Racesimulator
target4.showInterface=false
target4.type=ClassTarget
target4.width=110
target4.x=540
target4.y=200
target5.height=50
target5.name=ComparableContent
target5.showInterface=false
target5.type=InterfaceTarget
target5.width=250
target5.x=760
target5.y=110
target6.height=110
target6.name=Athlete
target6.showInterface=false
target6.type=ClassTarget
target6.width=250
target6.x=760
target6.y=340
target7.height=50
target7.name=BinarySearchTree
target7.showInterface=false
target7.type=ClassTarget
target7.width=230
target7.x=70
target7.y=10