From 65125e61d6d3079cbb3bdf144df45a1da875591c Mon Sep 17 00:00:00 2001 From: "navid.sassan" Date: Sun, 8 Nov 2020 12:19:17 +0100 Subject: [PATCH] added ex07 --- 07/Aufgabenstellung Praktikum 07.pdf | Bin 0 -> 157704 bytes 07/build.gradle | 41 +++ 07/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 58694 bytes 07/gradle/wrapper/gradle-wrapper.properties | 5 + 07/gradlew | 183 ++++++++++ 07/gradlew.bat | 103 ++++++ 07/settings.gradle | 10 + .../main/java/ch/zhaw/ads/AdjListGraph.java | 54 +++ 07/src/main/java/ch/zhaw/ads/AnyServer.java | 13 + .../java/ch/zhaw/ads/CommandExecutor.java | 21 ++ .../main/java/ch/zhaw/ads/DijkstraNode.java | 36 ++ 07/src/main/java/ch/zhaw/ads/Edge.java | 20 ++ 07/src/main/java/ch/zhaw/ads/ExBox.java | 18 + 07/src/main/java/ch/zhaw/ads/ExBoxFrame.java | 314 ++++++++++++++++++ 07/src/main/java/ch/zhaw/ads/Graph.java | 20 ++ .../main/java/ch/zhaw/ads/GraphicPanel.java | 88 +++++ 07/src/main/java/ch/zhaw/ads/Node.java | 34 ++ .../main/java/ch/zhaw/ads/ServerFactory.java | 68 ++++ 07/src/main/resources/Swiss.txt | 14 + 19 files changed, 1042 insertions(+) create mode 100644 07/Aufgabenstellung Praktikum 07.pdf create mode 100644 07/build.gradle create mode 100644 07/gradle/wrapper/gradle-wrapper.jar create mode 100644 07/gradle/wrapper/gradle-wrapper.properties create mode 100755 07/gradlew create mode 100644 07/gradlew.bat create mode 100644 07/settings.gradle create mode 100644 07/src/main/java/ch/zhaw/ads/AdjListGraph.java create mode 100644 07/src/main/java/ch/zhaw/ads/AnyServer.java create mode 100644 07/src/main/java/ch/zhaw/ads/CommandExecutor.java create mode 100644 07/src/main/java/ch/zhaw/ads/DijkstraNode.java create mode 100644 07/src/main/java/ch/zhaw/ads/Edge.java create mode 100644 07/src/main/java/ch/zhaw/ads/ExBox.java create mode 100644 07/src/main/java/ch/zhaw/ads/ExBoxFrame.java create mode 100644 07/src/main/java/ch/zhaw/ads/Graph.java create mode 100644 07/src/main/java/ch/zhaw/ads/GraphicPanel.java create mode 100644 07/src/main/java/ch/zhaw/ads/Node.java create mode 100644 07/src/main/java/ch/zhaw/ads/ServerFactory.java create mode 100644 07/src/main/resources/Swiss.txt diff --git a/07/Aufgabenstellung Praktikum 07.pdf b/07/Aufgabenstellung Praktikum 07.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7aaf77b11d63a4112d95aa16bf5c758a8a33e443 GIT binary patch literal 157704 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

`fS`B@Md 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 PYFC|jCcpB2U@ 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 z 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 literal 0 HcmV?d00001 diff --git a/07/build.gradle b/07/build.gradle new file mode 100644 index 0000000..11aaf39 --- /dev/null +++ b/07/build.gradle @@ -0,0 +1,41 @@ +/* + * This file was generated by the Gradle 'init' task. + * + * This generated file contains a sample Java project to get you started. + * For more details take a look at the Java Quickstart chapter in the Gradle + * User Manual available at https://docs.gradle.org/6.3/userguide/tutorial_java_projects.html + */ + +plugins { + // Apply the java plugin to add support for Java + id 'java' + + // Apply the application plugin to add support for building a CLI application. + id 'application' +} + +repositories { + // Use jcenter for resolving dependencies. + // You can declare any Maven/Ivy/file repository here. + jcenter() +} + +dependencies { + // This dependency is used by the application. + implementation 'com.google.guava:guava:28.2-jre' + implementation 'junit:junit:4.12' + + // Use JUnit test framework + testImplementation 'junit:junit:4.12' +} + +application { + // Define the main class for the application. + mainClassName = 'ch.zhaw.ads.ExBox' +} + +test { + testLogging { + events "passed", "skipped", "failed", "standardOut", "standardError" + } +} diff --git a/07/gradle/wrapper/gradle-wrapper.jar b/07/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..490fda8577df6c95960ba7077c43220e5bb2c0d9 GIT binary patch literal 58694 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 literal 0 HcmV?d00001 diff --git a/07/gradle/wrapper/gradle-wrapper.properties b/07/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..a4b4429 --- /dev/null +++ b/07/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/07/gradlew b/07/gradlew new file mode 100755 index 0000000..2fe81a7 --- /dev/null +++ b/07/gradlew @@ -0,0 +1,183 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=`expr $i + 1` + done + case $i in + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=`save "$@"` + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +exec "$JAVACMD" "$@" diff --git a/07/gradlew.bat b/07/gradlew.bat new file mode 100644 index 0000000..9109989 --- /dev/null +++ b/07/gradlew.bat @@ -0,0 +1,103 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/07/settings.gradle b/07/settings.gradle new file mode 100644 index 0000000..35c664f --- /dev/null +++ b/07/settings.gradle @@ -0,0 +1,10 @@ +/* + * This file was generated by the Gradle 'init' task. + * + * The settings file is used to specify which projects to include in your build. + * + * Detailed information about configuring a multi-project build in Gradle can be found + * in the user manual at https://docs.gradle.org/6.3/userguide/multi_project_builds.html + */ + +rootProject.name = 'praktikum01' diff --git a/07/src/main/java/ch/zhaw/ads/AdjListGraph.java b/07/src/main/java/ch/zhaw/ads/AdjListGraph.java new file mode 100644 index 0000000..b8800af --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/AdjListGraph.java @@ -0,0 +1,54 @@ +package ch.zhaw.ads; + +import java.util.*; + +public class AdjListGraph + implements Graph { + private final List nodes = new LinkedList(); + private final Class nodeClazz; + private final Class edgeClazz; + + public AdjListGraph(Class nodeClazz, Class edgeClazz) { + this.nodeClazz = nodeClazz; + this.edgeClazz = edgeClazz; + } + + // füge Knoten hinzu, gebe alten zurück falls Knoten schon existiert + public N addNode(String name) throws Throwable { + N node = findNode(name); + if (node == null) { + node = (N) nodeClazz.newInstance(); + node.setName(name); + nodes.add(node); + } + return node; + } + + // füge gerichtete Kante hinzu + public void addEdge(String source, String dest, double weight) throws Throwable { + N src = addNode(source); + N dst = addNode(dest); + + try { + E edge = (E) edgeClazz.newInstance(); + edge.setDest(dst); + edge.setWeight(weight); + src.addEdge(edge); + } catch (Exception e) {} + } + + // finde den Knoten anhand seines Namens + public N findNode(String name) { + for (N node : nodes) { + if (node.getName().equals(name)) { + return node; + } + } + return null; + } + + // Iterator über alle Knoten + public Iterable getNodes() { + return nodes; + } +} \ No newline at end of file diff --git a/07/src/main/java/ch/zhaw/ads/AnyServer.java b/07/src/main/java/ch/zhaw/ads/AnyServer.java new file mode 100644 index 0000000..e8dfb07 --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/AnyServer.java @@ -0,0 +1,13 @@ +package ch.zhaw.ads; + +public class AnyServer implements CommandExecutor { + + @Override + public String execute(String command) { + StringBuffer result = new StringBuffer(100); + result.append("Die Eingabe war \""); + result.append(command); + result.append("\"\n"); + return result.toString(); + } +} diff --git a/07/src/main/java/ch/zhaw/ads/CommandExecutor.java b/07/src/main/java/ch/zhaw/ads/CommandExecutor.java new file mode 100644 index 0000000..57605f0 --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/CommandExecutor.java @@ -0,0 +1,21 @@ +/** + * CommandExecutor -- Praktikum Experimentierkasten -- SW3 Dieses Interface muss + * von jedem Server implementiert werden. + * + * @author E. Mumprecht + * @version 1.0 -- Geruest fuer irgendeinen Server + * @version 1.1 -- K. Rege Fehlerueckgabe hinzugefuegt + */ +package ch.zhaw.ads; + +public interface CommandExecutor { + + /** + * execute -- nimmt eine Kommandozeile, tut irgendetwas gescheites, und + * berichtet das Resultat. + * + * @param command Kommandozeile + * @return Resultat, ueblicherweise eine oder mehrere Zeilen. + */ + String execute(String command) throws Exception; +}//interface CommandExecutor \ No newline at end of file diff --git a/07/src/main/java/ch/zhaw/ads/DijkstraNode.java b/07/src/main/java/ch/zhaw/ads/DijkstraNode.java new file mode 100644 index 0000000..bb373bb --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/DijkstraNode.java @@ -0,0 +1,36 @@ +package ch.zhaw.ads; + +class DijkstraNode extends Node implements Comparable { + boolean mark; + DijkstraNode prev; + double dist; + + public double getDist() { + return dist; + } + + public void setDist(double dist) { + this.dist = dist; + } + + public void setMark(boolean m) { + mark = m; + } + + public boolean getMark() { + return mark; + } + + public void setPrev(DijkstraNode p) { + prev = p; + } + + public DijkstraNode getPrev() { + return prev; + } + + public int compareTo(DijkstraNode n) { + // TODO: implement + return 0; + } +} diff --git a/07/src/main/java/ch/zhaw/ads/Edge.java b/07/src/main/java/ch/zhaw/ads/Edge.java new file mode 100644 index 0000000..b78d0d2 --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/Edge.java @@ -0,0 +1,20 @@ +package ch.zhaw.ads; + +public class Edge +{ + protected N dest; // Zielknoten der Kante + protected double weight; // Kantengewicht + + public Edge() {} + + public Edge(N dest, double weight) { + this.dest = dest; + this.weight = weight; + } + + public void setDest(N node) {this.dest = node;} + public N getDest() {return dest;} + + public void setWeight(double w) {this.weight = w;} + double getWeight() {return weight;} +} diff --git a/07/src/main/java/ch/zhaw/ads/ExBox.java b/07/src/main/java/ch/zhaw/ads/ExBox.java new file mode 100644 index 0000000..5fb3f64 --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/ExBox.java @@ -0,0 +1,18 @@ +/** + * @author K. Rege + * @version 1.0 -- Experimentierkasten + */ +package ch.zhaw.ads; + +import java.awt.*; +import java.io.*; +import java.awt.event.*; + +public class ExBox { + + public static void main(String[] args) throws Exception { + ExBoxFrame f = new ExBoxFrame(); + f.setLocationRelativeTo(null); + f.setVisible(true); + } +} diff --git a/07/src/main/java/ch/zhaw/ads/ExBoxFrame.java b/07/src/main/java/ch/zhaw/ads/ExBoxFrame.java new file mode 100644 index 0000000..4d83da9 --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/ExBoxFrame.java @@ -0,0 +1,314 @@ +/** + * @(#)ExBoxFrame.java + * + * JFC ExBox application + * + * @author K.Rege + * @version 1.00 2014/2/3 + * @version 1.01 2016/8/2 + * @version 2.00 2017/8/30 Test + * @version 2.01 2018/2/5 AutoScale + * @version 2d.02 2018/2/5 Reconnect (inspired by S. Kunz) + */ + +package ch.zhaw.ads; + + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import java.io.*; +import java.util.*; + +import org.junit.runner.JUnitCore; +import org.junit.runner.Result; +import org.junit.runner.notification.Failure; +import org.junit.runner.notification.RunListener; +import org.junit.runner.Description; + + +public class ExBoxFrame extends JFrame implements ActionListener, ItemListener { + private static double SCALE = 1; + private JMenuItem connect, open, test, textView, graphicView; + private JButton enter; + private JTextField arguments; + private JCheckBox reconnect; + private JComboBox history; + private JTextArea output; + private JScrollPane scrollPane; + private CommandExecutor command; + private boolean graphicOn; + private GraphicPanel graphic; + private String lastServer; + + public static void setFontSize(int size) { + Set keySet = UIManager.getLookAndFeelDefaults().keySet(); + Object[] keys = keySet.toArray(new Object[keySet.size()]); + for (Object key : keys) { + if (key != null && key.toString().toLowerCase().contains("font")) { + Font font = UIManager.getDefaults().getFont(key); + if (font != null) { + font = font.deriveFont((float) size); + UIManager.put(key, font); + } + } + } + } + + private void initMenu() { + JMenuBar menuBar = new JMenuBar(); + JMenu menuFile = new JMenu(); + JMenuItem menuFileExit = new JMenuItem(); + menuFile.setText("File"); + menuFileExit.setText("Exit"); + + // Add action listener.for the menu button + menuFileExit.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + ExBoxFrame.this.windowClosed(); + } + }); + + menuFile.add(menuFileExit); + menuBar.add(menuFile); + + JMenu menuServer = new JMenu("Server"); + menuBar.add(menuServer); + connect = new JMenuItem("Connect"); + connect.addActionListener(this); + menuServer.add(connect); + test = new JMenuItem("Test"); + test.addActionListener(this); + menuServer.add(test); + + JMenu menuView = new JMenu("View"); + menuBar.add(menuView); + textView = new JMenuItem("Text"); + textView.addActionListener(this); + menuView.add(textView); + graphicView = new JMenuItem("Graphic"); + graphicView.addActionListener(this); + menuView.add(graphicView); + + open = new JMenuItem("Open..."); + open.addActionListener(this); + menuFile.insert(open, 0); + setJMenuBar(menuBar); + } + + private void initComponents() { + setLayout(new BorderLayout()); + output = new JTextArea(); + scrollPane = new JScrollPane(output); + add(BorderLayout.CENTER, scrollPane); + + Panel panel = new Panel(new BorderLayout()); + arguments = new JTextField(); + arguments.addActionListener(this); + panel.add(BorderLayout.CENTER, arguments); + enter = new JButton("enter"); + enter.addActionListener(this); + panel.add(BorderLayout.EAST, enter); + reconnect = new JCheckBox("reconnect",true); + panel.add(BorderLayout.WEST,reconnect); + history = new JComboBox(); + history.addItemListener(this); + panel.add(BorderLayout.SOUTH, history); + add(BorderLayout.SOUTH, panel); + } + + /** + * get default path for file open dialog + */ + String getPathCompiled() { + String pathtocompiled = getClass().getProtectionDomain().getCodeSource().getLocation().getPath(); + pathtocompiled = pathtocompiled.replace("%20", " ").replace("/", + File.separator); + pathtocompiled += getClass().getPackage().getName().replace(".", + File.separator); + if (System.getProperty("os.name").toLowerCase().indexOf("win") >= 0) { + pathtocompiled = pathtocompiled.substring(1); + } + return pathtocompiled; + } + + /** + * The constructor + */ + public ExBoxFrame() throws Exception { + try { + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); + } catch (Exception ex) { + ex.printStackTrace(); + } + Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); + if (screenSize.getWidth() > 1920) { + SCALE = 2; + } + setFontSize((int) (11 * SCALE)); + setSize(new Dimension((int) (400 * SCALE), (int) (400 * SCALE))); + setTitle("ExBox"); + setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + initMenu(); + initComponents(); + } + + private void error(String s) { + output.append("\nERROR:" + s + "\n"); + } + + private void interpret(String args) throws Exception { + if (reconnect.isSelected() && lastServer != null) { + command = ServerFactory.createServer(lastServer); + } + if (!arguments.getText().equals(history.getItemAt(0)) + && !arguments.getText().equals(history.getSelectedItem())) { + history.insertItemAt(arguments.getText(), 0); + } + if (command == null) { + error("no Server connected"); + } else { + String res = command.execute(args); + if (graphicOn) { + graphic.setFigure(res); + } else { + output.append(res); + } + } + } + + private void setGraphicView() { + if (graphicOn) { + return; + } + remove(scrollPane); + graphic = new GraphicPanel(); + output.removeNotify(); + add(BorderLayout.CENTER, graphic); + graphicOn = true; + validate(); + repaint(); + } + + private void setTextView() { + if (!graphicOn) { + return; + } + remove(graphic); + add(BorderLayout.CENTER, scrollPane); + graphicOn = false; + validate(); + repaint(); + } + + private String openFileDialog(String startDirectory, String pattern) { + FileDialog fd = new FileDialog(this, "Open"); + if (pattern != null) { + fd.setFile(pattern); + } + if (startDirectory != null) { + fd.setDirectory(startDirectory); + } + fd.setVisible(true); + return fd.getDirectory() + fd.getFile(); + } + + private void testCommand() throws Exception { + final java.util.List failed = new LinkedList(); + final java.util.List finished = new LinkedList(); + + JUnitCore runner = new JUnitCore(); + + String name = openFileDialog(getPathCompiled(), "*Test.class"); + runner.addListener(new RunListener() { + @Override + public void testFinished(Description description) throws Exception { + finished.add(description.getDisplayName()); + } + + @Override + public void testFailure(Failure failure) throws Exception { + failed.add(failure.getDescription().getDisplayName()); + } + }); + Class testClass = ServerFactory.loadClass(name); + Result result = runner.run(testClass); + + for (String test : finished) { + if (!failed.contains(test)) { + output.append(test + ": OK\n"); + } + } + for (Failure failure : result.getFailures()) { + output.append(failure.toString() + " ERROR\n"); + } + output.append( + "TESTS PASSED: " + + (result.wasSuccessful() + ? "OK \u263a" + : result.getFailures().size() + " ERRORS") + + "\n"); + } + + private void connectCommand() throws Exception { + String name = openFileDialog(getPathCompiled(), "*Server.class"); + command = ServerFactory.createServer(name); + lastServer = name; + String fullClassName = command.getClass().getName(); + String simpleClassName = fullClassName.substring( + fullClassName.lastIndexOf('.') + 1); + setTitle("ExBox connected to " + simpleClassName); + + } + + private void openFile() throws Exception { + String name = openFileDialog(null, null); + + BufferedReader br = new BufferedReader( + new InputStreamReader(new FileInputStream(name), "ISO-8859-1")); + StringBuffer b = new StringBuffer(); + String line; + while ((line = br.readLine()) != null) { + b.append(line); + b.append('\n'); + } + interpret(b.toString()); + } + + public void itemStateChanged(ItemEvent e) { + try { + arguments.setText((String) e.getItem()); + interpret(arguments.getText()); + } catch (Throwable ex) { + error(ex.toString()); + } + } + + public void actionPerformed(ActionEvent e) { + try { + if ((e.getSource() == arguments) || (e.getSource() == enter)) { + interpret(arguments.getText()); + } else if (e.getSource() == connect) { + connectCommand(); + } else if (e.getSource() == test) { + testCommand(); + } else if (e.getSource() == open) { + openFile(); + } else if (e.getSource() == textView) { + setTextView(); + } else if (e.getSource() == graphicView) { + setGraphicView(); + } + } catch (Throwable ex) { + ex.printStackTrace(); + error(ex.toString()); + } + } + + /** + * Shutdown procedure when run as an application. + */ + protected void windowClosed() { + System.exit(0); + } +} diff --git a/07/src/main/java/ch/zhaw/ads/Graph.java b/07/src/main/java/ch/zhaw/ads/Graph.java new file mode 100644 index 0000000..6c2584c --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/Graph.java @@ -0,0 +1,20 @@ +package ch.zhaw.ads; + +import java.util.*; + +public interface Graph { + + // füge Knoten hinzu, tue nichts, falls Knoten schon existiert + N addNode (String name) throws Throwable; + + // finde den Knoten anhand seines Namens + N findNode(String name); + + // Iterator über alle Knoten des Graphen + Iterable getNodes(); + + // füge gerichtete und gewichtete Kante hinzu + void addEdge(String source, String dest, double weight) throws Throwable ; + + +} diff --git a/07/src/main/java/ch/zhaw/ads/GraphicPanel.java b/07/src/main/java/ch/zhaw/ads/GraphicPanel.java new file mode 100644 index 0000000..e5cf666 --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/GraphicPanel.java @@ -0,0 +1,88 @@ +package ch.zhaw.ads; + + +import javax.swing.*; +import java.awt.event.*; +import java.awt.*; +import java.util.*; + + +public class GraphicPanel extends JPanel { + + String figure; + + public void setFigure(String figure) { + this.figure = figure; + paint(getGraphics()); + } + + private void drawRect(Graphics g, double x, double y, double width, double height, String style) { + int w = getWidth(); + int h = getHeight(); + int ix0 = (int) (w * x); + int iy0 = (int) (h * y); + int ix1 = (int) (w * (x + width)); + int iy1 = (int) (h * (y + height)); + if (style.equals("draw")) { + g.drawRect(ix0, h - iy1, ix1 - ix0, iy1 - iy0); + } else { + g.fillRect(ix0, h - iy1, ix1 - ix0, iy1 - iy0); + } + } + + private void drawFigure(Graphics g) { + if (figure != null) { + int w = getWidth(); + int h = getHeight(); + g.setColor(Color.black); + StringTokenizer tok = new StringTokenizer(figure, " <>=/,\"\n"); + while (tok.hasMoreTokens()) { + String fig = tok.nextToken(); + if (fig.equals("line")) { + tok.nextToken(); + double x1 = Double.parseDouble(tok.nextToken()); + tok.nextToken(); + double y1 = Double.parseDouble(tok.nextToken()); + tok.nextToken(); + double x2 = Double.parseDouble(tok.nextToken()); + tok.nextToken(); + double y2 = Double.parseDouble(tok.nextToken()); + g.drawLine((int) (x1 * w), h - (int) (y1 * h), + (int) (x2 * w), h - (int) (y2 * h)); + } else if (fig.equals("rect")) { + tok.nextToken(); + double x = Double.parseDouble(tok.nextToken()); + tok.nextToken(); + double y = Double.parseDouble(tok.nextToken()); + tok.nextToken(); + double width = Double.parseDouble(tok.nextToken()); + tok.nextToken(); + double height = Double.parseDouble(tok.nextToken()); + tok.nextToken(); + String style = tok.nextToken(); + drawRect(g, x, y, width, height, style); + } else if (fig.equals("color")) { + tok.nextToken(); + int red = Integer.parseInt(tok.nextToken()); + tok.nextToken(); + int green = Integer.parseInt(tok.nextToken()); + tok.nextToken(); + int blue = Integer.parseInt(tok.nextToken()); + g.setColor(new Color(red, green, blue)); + } + } + } + } + + private void clear(Graphics g) { + int w = getWidth(); + int h = getHeight(); + g.setColor(new Color(240, 240, 240)); + g.fillRect(0, 0, w, h); + } + + public void paint(Graphics g) { + clear(g); + drawFigure(g); + } +} \ No newline at end of file diff --git a/07/src/main/java/ch/zhaw/ads/Node.java b/07/src/main/java/ch/zhaw/ads/Node.java new file mode 100644 index 0000000..ccdf66d --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/Node.java @@ -0,0 +1,34 @@ +package ch.zhaw.ads; + +import java.util.*; + +public class Node { + protected String name; // Name + protected List edges; // Kanten + + public Node() { + edges = new LinkedList(); + } + + public Node(String name) { + super(); + this.name = name; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Iterable getEdges() { + return edges; + } + + public void addEdge(E edge) { + edges.add(edge); + } + +} diff --git a/07/src/main/java/ch/zhaw/ads/ServerFactory.java b/07/src/main/java/ch/zhaw/ads/ServerFactory.java new file mode 100644 index 0000000..f6acba6 --- /dev/null +++ b/07/src/main/java/ch/zhaw/ads/ServerFactory.java @@ -0,0 +1,68 @@ +/** + * ServerFactory -- Praktikum Experimentierkasten -- + * + * @author K. Rege + * @version 1.0 -- Factory zur Erstellung von Server Objekten + * @version 2.0 -- Dynamisches Nachladen + */ +package ch.zhaw.ads; + +import java.io.*; + +/* Classloader that handles file path of class + */ +class MyClassLoader extends ClassLoader { + private String path; + + MyClassLoader(ClassLoader parent) { + super(parent); + } + + private byte[] getBytes(String name) { + try { + RandomAccessFile file = new RandomAccessFile(name, "r"); + byte data[] = new byte[(int) file.length()]; + file.readFully(data); + file.close(); + return data; + } catch (IOException e) {} + return null; + } + + /** + * @name filename of class + */ + public Class loadClass(String name, boolean resolve) throws ClassNotFoundException { + // System.out.println("load:" + name + " " + resolve); + Class clazz; + byte[] classData = getBytes(name); + if (classData != null) { + clazz = defineClass(classData, 0, classData.length); + path = name.substring(0, + name.length() - clazz.getName().length() - ".class".length()); + return clazz; + } + if (!resolve) { + classData = getBytes(path + name.replace(".", File.separator) + ".class"); + if (classData != null) { + return defineClass(classData, 0, classData.length); + } + } + return findSystemClass(name); + } +} + + +public class ServerFactory { + + public static Class loadClass(String name) throws Exception { + MyClassLoader myClassLoader = new MyClassLoader( + MyClassLoader.class.getClassLoader()); + Class clazz = myClassLoader.loadClass(name, true); + return clazz; + } + + public static CommandExecutor createServer(String name) throws Exception { + return (CommandExecutor) loadClass(name).newInstance(); + } +} diff --git a/07/src/main/resources/Swiss.txt b/07/src/main/resources/Swiss.txt new file mode 100644 index 0000000..f4881f2 --- /dev/null +++ b/07/src/main/resources/Swiss.txt @@ -0,0 +1,14 @@ +Winterthur Zürich 25 +Zürich Bern 126 +Zürich Genf 277 +Zürich Luzern 54 +Zürich Chur 121 +Zürich Berikon 16 +Bern Genf 155 +Genf Lugano 363 +Lugano Luzern 206 +Lugano Chur 152 +Chur Luzern 146 +Luzern Bern 97 +Bern Berikon 102 +Luzern Berikon 41 \ No newline at end of file