diff --git a/archive/MV3302ClassCode/nbproject/project.properties b/archive/MV3302ClassCode/nbproject/project.properties index 8e152217fb8171e32c5ff2f261f011adfce1108e..f011abd07ec00d0f8be440de9f7b3338389ca5e2 100644 --- a/archive/MV3302ClassCode/nbproject/project.properties +++ b/archive/MV3302ClassCode/nbproject/project.properties @@ -3,7 +3,7 @@ annotation.processing.enabled.in.editor=false annotation.processing.processors.list= annotation.processing.run.all.processors=true annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output -application.title=MV3302 +application.title=Networked Graphics MV3500 examples MV3302 application.vendor=dansl build.classes.dir=${build.dir}/classes build.classes.excludes=**/*.java,**/*.form @@ -29,10 +29,10 @@ debug.test.modulepath=\ dist.archive.excludes= # This directory is removed when the project is cleaned: dist.dir=dist -dist.jar=${dist.dir}/MV3302.jar +dist.jar=${dist.dir}/Networked_Graphics_MV3500_examples_MV3302.jar dist.javadoc.dir=${dist.dir}/javadoc dist.jlink.dir=${dist.dir}/jlink -dist.jlink.output=${dist.jlink.dir}/MV3302 +dist.jlink.output=${dist.jlink.dir}/Networked_Graphics_MV3500_examples_MV3302 endorsed.classpath= excludes= includes=** @@ -73,7 +73,7 @@ jlink.additionalmodules= # The jlink additional command line parameters jlink.additionalparam= jlink.launcher=true -jlink.launcher.name=MV3302 +jlink.launcher.name=Networked_Graphics_MV3500_examples_MV3302 main.class=mv3302.run.RunSimpleServer meta.inf.dir=${src.dir}/META-INF mkdist.disabled=true diff --git a/archive/MV3302ClassCode/nbproject/project.xml b/archive/MV3302ClassCode/nbproject/project.xml index ada7c5b8f694760a85fd4af7350fe700b2157be9..54b7d8ec730f663f5234f8149874c8d2006c37ee 100644 --- a/archive/MV3302ClassCode/nbproject/project.xml +++ b/archive/MV3302ClassCode/nbproject/project.xml @@ -3,7 +3,7 @@ <type>org.netbeans.modules.java.j2seproject</type> <configuration> <data xmlns="http://www.netbeans.org/ns/j2se-project/3"> - <name>MV3302</name> + <name>Networked Graphics MV3500 examples MV3302</name> <source-roots> <root id="src.dir"/> </source-roots> diff --git a/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/README.md b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/README.md new file mode 100644 index 0000000000000000000000000000000000000000..38a981a6457b9a74e9733f3c93572b085e78108b --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/README.md @@ -0,0 +1,10 @@ +# Schnitzler Homework 2 + +*** + +## Description +Modification of TcpExample3 and adding some code to implement a chat room with multiple clients. + +The 'SchnitzlerServer' class sets up a server that listens for incoming client connections on port 2317. When a client connects, the server creates a new handler thread for managing communication with that client. Each client's messages are broadcast to all other connected clients. + +The 'SchnitzlerClient' class connects to a server running on localhost at port 2317. It sends user input from the console to the server and displays messages received from the server. \ No newline at end of file diff --git a/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/SchnitzlerClient.java b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/SchnitzlerClient.java new file mode 100644 index 0000000000000000000000000000000000000000..82eb4915a5ce1c64fc81d152388f5d8d1dfb1daf --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/SchnitzlerClient.java @@ -0,0 +1,53 @@ +package MV3500Cohort2024JulySeptember.homework2.Schnitzler; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.PrintWriter; +import java.net.Socket; +import java.util.Scanner; + +/** + * + * @author simonschnitzler + */ +public class SchnitzlerClient { + public final static String LOCALHOST = "0:0:0:0:0:0:0:1"; //Local host + + /** + * @param args the command line arguments + * @throws java.lang.Exception + */ + public static void main(String[] args) throws Exception { + Socket socket = new Socket(LOCALHOST, 2317); + + new Thread(new Reader(socket)).start(); + + PrintWriter out = new PrintWriter(socket.getOutputStream(), true); + Scanner scanner = new Scanner(System.in); + while (scanner.hasNextLine()) { + out.println(scanner.nextLine()); + } + } + + private static class Reader implements Runnable { + private BufferedReader in; + + public Reader(Socket socket) throws IOException { + in = new BufferedReader(new InputStreamReader(socket.getInputStream())); + } + + @Override + public void run() { + try { + String message; + while ((message = in.readLine()) != null) { + System.out.println(message); + } + } catch (IOException e) { + System.out.println("Error reading from server: " + e); + } + } + } + +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/SchnitzlerServer.java b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/SchnitzlerServer.java new file mode 100644 index 0000000000000000000000000000000000000000..2f2323f5b3068b963cad413bf7ee3ecf1145723e --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/SchnitzlerServer.java @@ -0,0 +1,99 @@ +package MV3500Cohort2024JulySeptember.homework2.Schnitzler; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.io.PrintStream; +import java.io.PrintWriter; +import java.net.InetAddress; +import java.net.ServerSocket; +import java.net.Socket; +import java.util.HashSet; +import java.util.Set; + +/** + * + * @author simonschnitzler + */ +public class SchnitzlerServer { + // the set clientWriters contains form all sockets the active PrintStream + private static Set<PrintWriter> clientWriters = new HashSet<>(); + + /** + * @param args the command line arguments + */ + public static void main(String[] args) { + System.out.println(SchnitzlerServer.class.getName() + " has started..."); // it helps debugging to put this on console first + try (ServerSocket listener = new ServerSocket(2317)) { + while (true) { + Handler handler = new Handler(listener.accept()); // create a new thread writing and reading to and from the new socket + OutputStream os = handler.socket.getOutputStream(); + PrintStream ps = new PrintStream(os); + + InetAddress remoteAddress = handler.socket.getInetAddress(); + int remotePort = handler.socket.getPort(); + String message = remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " has connected to the server."; + System.out.println(message); + ps.println("Welcome " + remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " to the group chat!"); + for (PrintWriter writer : clientWriters) { + writer.println(message); + } + ps.flush(); + handler.start(); + } + }catch (IOException e) { + System.err.println("Problem with " + SchnitzlerServer.class.getName() + " networking: " + e); + + // Provide more helpful information to user if exception occurs due to running twice at one time + if (e instanceof java.net.BindException) { + System.err.println("*** Be sure to stop any other running instances of programs using this port!"); + } + } + + } + + private static class Handler extends Thread { + public final Socket socket; + private PrintWriter out; + private BufferedReader in; + + public Handler(Socket socket) { + this.socket = socket; + } + + @Override + public void run() { + try { + in = new BufferedReader(new InputStreamReader(socket.getInputStream())); + out = new PrintWriter(socket.getOutputStream(), true); + + synchronized (clientWriters) { + clientWriters.add(out); + } + + String message; + while ((message = in.readLine()) != null) { + String outputMessage = socket.getInetAddress().getHostName() + "=" + socket.getInetAddress().getHostAddress() + ", " + socket.getPort()+ ": " + message; + System.out.println(outputMessage); + for (PrintWriter writer : clientWriters) { + writer.println(outputMessage); + } + } + } catch (IOException e) { + System.out.println("Error handling client: " + e); + } finally { + try { + socket.close(); + } catch (IOException e) { + System.out.println("Couldn't close a socket, what's going on?"); + } + + synchronized (clientWriters) { + clientWriters.remove(out); + } + } + } + } + +} diff --git a/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/package-info.java b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/package-info.java new file mode 100644 index 0000000000000000000000000000000000000000..f242324ce45812003d0e3135c3eaa04f81055fde --- /dev/null +++ b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Schnitzler/package-info.java @@ -0,0 +1,10 @@ +/** + * TCP Unicast homework assignments supporting the NPS MOVES MV3500 Networked Graphics course. + * + * @see <a href="https://gitlab.nps.edu/Savage/NetworkedGraphicsMV3500/-/tree/master/assignments" target="_blank">networkedGraphicsMV3500 assignments</a> + * @see java.lang.Package + * @see <a href="https://stackoverflow.com/questions/22095487/why-is-package-info-java-useful" target="_blank">StackOverflow: why-is-package-info-java-useful</a> + * @see <a href="https://stackoverflow.com/questions/624422/how-do-i-document-packages-in-java" target="_blank">StackOverflow: how-do-i-document-packages-in-java</a> + */ + +package MV3500Cohort2024JulySeptember.homework2.Schnitzler; diff --git a/examples/otherProjects/DisDemo/nbproject/build-impl.xml b/examples/otherProjects/DisDemo/nbproject/build-impl.xml index 6141647413b69914cd9d6c915dddecfe9b72498d..62d17bb9aa6360fab66930e5d0b8c0bf2062cf27 100644 --- a/examples/otherProjects/DisDemo/nbproject/build-impl.xml +++ b/examples/otherProjects/DisDemo/nbproject/build-impl.xml @@ -19,7 +19,7 @@ is divided into following sections: - cleanup --> -<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="DisDemo-impl"> +<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="Networked_Graphics_MV3500_examples_DisDemo-impl"> <fail message="Please build using Ant 1.8.0 or higher."> <condition> <not> @@ -619,7 +619,7 @@ is divided into following sections: </fileset> </union> <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/> - <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="DisDemo" testname="TestNG tests" workingDir="${work.dir}"> + <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="Networked_Graphics_MV3500_examples_DisDemo" testname="TestNG tests" workingDir="${work.dir}"> <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/> <propertyset> <propertyref prefix="test-sys-prop."/> @@ -716,7 +716,7 @@ is divided into following sections: <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}"> <isset property="test.method"/> </condition> - <condition else="-suitename DisDemo -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> + <condition else="-suitename Networked_Graphics_MV3500_examples_DisDemo -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> <matches pattern=".*\.xml" string="@{testClass}"/> </condition> <delete dir="${build.test.results.dir}" quiet="true"/> @@ -1057,7 +1057,7 @@ is divided into following sections: <delete file="${built-jar.properties}" quiet="true"/> </target> <target if="already.built.jar.${basedir}" name="-warn-already-built-jar"> - <echo level="warn" message="Cycle detected: DisDemo was already built"/> + <echo level="warn" message="Cycle detected: Networked Graphics MV3500 examples DisDemo was already built"/> </target> <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps"> <mkdir dir="${build.dir}"/> @@ -1728,7 +1728,7 @@ is divided into following sections: <delete file="${built-clean.properties}" quiet="true"/> </target> <target if="already.built.clean.${basedir}" name="-warn-already-built-clean"> - <echo level="warn" message="Cycle detected: DisDemo was already built"/> + <echo level="warn" message="Cycle detected: Networked Graphics MV3500 examples DisDemo was already built"/> </target> <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps"> <mkdir dir="${build.dir}"/> diff --git a/examples/otherProjects/DisDemo/nbproject/project.properties b/examples/otherProjects/DisDemo/nbproject/project.properties index fa9835b954b8fac0e8219195b5e3feaac1799cad..5eac3f852b617e1d37a735e55b301ca57297728f 100644 --- a/examples/otherProjects/DisDemo/nbproject/project.properties +++ b/examples/otherProjects/DisDemo/nbproject/project.properties @@ -3,7 +3,7 @@ annotation.processing.enabled.in.editor=true annotation.processing.processors.list= annotation.processing.run.all.processors=true annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output -application.title=DisDemo +application.title=Networked Graphics MV3500 examples DisDemo application.vendor=mcgredo build.classes.dir=${build.dir}/classes build.classes.excludes=**/*.java,**/*.form @@ -29,7 +29,7 @@ debug.test.modulepath=\ dist.archive.excludes= # This directory is removed when the project is cleaned: dist.dir=dist -dist.jar=${dist.dir}/DisDemo.jar +dist.jar=${dist.dir}/Networked_Graphics_MV3500_examples_DisDemo.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= @@ -69,7 +69,7 @@ javadoc.use=true javadoc.version=false javadoc.windowtitle=DIS Square Box Demo jlink.launcher=false -jlink.launcher.name=DisDemo +jlink.launcher.name=Networked_Graphics_MV3500_examples_DisDemo main.class=DisDemo.DisDemonstration manifest.file=manifest.mf meta.inf.dir=${src.dir}/META-INF diff --git a/examples/otherProjects/DisDemo/nbproject/project.xml b/examples/otherProjects/DisDemo/nbproject/project.xml index 41607b84dd811961486da01248afc2a2ffec92e7..31b28784bf4c26a41104b6ac606c5c5030205c25 100644 --- a/examples/otherProjects/DisDemo/nbproject/project.xml +++ b/examples/otherProjects/DisDemo/nbproject/project.xml @@ -3,7 +3,7 @@ <type>org.netbeans.modules.java.j2seproject</type> <configuration> <data xmlns="http://www.netbeans.org/ns/j2se-project/3"> - <name>DisDemo</name> + <name>Networked Graphics MV3500 examples DisDemo</name> <source-roots> <root id="src.dir"/> </source-roots> diff --git a/examples/otherProjects/DisShooting/nbproject/build-impl.xml b/examples/otherProjects/DisShooting/nbproject/build-impl.xml index 94aaf4bbc87951d4c08ce6fecc7cbbbb34658b88..7a9a8494d71d26eda217b68185abe9c8be61408f 100644 --- a/examples/otherProjects/DisShooting/nbproject/build-impl.xml +++ b/examples/otherProjects/DisShooting/nbproject/build-impl.xml @@ -19,7 +19,7 @@ is divided into following sections: - cleanup --> -<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="DisShooting-impl"> +<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="Networked_Graphics_MV3500_examples_DisShooting-impl"> <fail message="Please build using Ant 1.8.0 or higher."> <condition> <not> @@ -619,7 +619,7 @@ is divided into following sections: </fileset> </union> <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/> - <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="DisShooting" testname="TestNG tests" workingDir="${work.dir}"> + <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="Networked_Graphics_MV3500_examples_DisShooting" testname="TestNG tests" workingDir="${work.dir}"> <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/> <propertyset> <propertyref prefix="test-sys-prop."/> @@ -716,7 +716,7 @@ is divided into following sections: <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}"> <isset property="test.method"/> </condition> - <condition else="-suitename DisShooting -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> + <condition else="-suitename Networked_Graphics_MV3500_examples_DisShooting -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> <matches pattern=".*\.xml" string="@{testClass}"/> </condition> <delete dir="${build.test.results.dir}" quiet="true"/> @@ -1057,7 +1057,7 @@ is divided into following sections: <delete file="${built-jar.properties}" quiet="true"/> </target> <target if="already.built.jar.${basedir}" name="-warn-already-built-jar"> - <echo level="warn" message="Cycle detected: DisShooting was already built"/> + <echo level="warn" message="Cycle detected: Networked Graphics MV3500 examples DisShooting was already built"/> </target> <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps"> <mkdir dir="${build.dir}"/> @@ -1728,7 +1728,7 @@ is divided into following sections: <delete file="${built-clean.properties}" quiet="true"/> </target> <target if="already.built.clean.${basedir}" name="-warn-already-built-clean"> - <echo level="warn" message="Cycle detected: DisShooting was already built"/> + <echo level="warn" message="Cycle detected: Networked Graphics MV3500 examples DisShooting was already built"/> </target> <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps"> <mkdir dir="${build.dir}"/> diff --git a/examples/otherProjects/DisShooting/nbproject/project.properties b/examples/otherProjects/DisShooting/nbproject/project.properties index 5925fe9fcbbfa234b21771e4c912cca162656a22..5033ea29ca6575d456bc96d213cdff132287d7d4 100644 --- a/examples/otherProjects/DisShooting/nbproject/project.properties +++ b/examples/otherProjects/DisShooting/nbproject/project.properties @@ -4,7 +4,7 @@ annotation.processing.processors.list= annotation.processing.run.all.processors=true annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output application.desc=Legacy DMcG DIS demo -application.title=DisShooting +application.title=Networked Graphics MV3500 examples DisShooting application.vendor=mcgredo build.classes.dir=${build.dir}/classes build.classes.excludes=**/*.java,**/*.form @@ -30,7 +30,7 @@ debug.test.modulepath=\ dist.archive.excludes= # This directory is removed when the project is cleaned: dist.dir=dist -dist.jar=${dist.dir}/DisShooting.jar +dist.jar=${dist.dir}/Networked_Graphics_MV3500_examples_DisShooting.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= @@ -73,7 +73,7 @@ javadoc.use=true javadoc.version=false javadoc.windowtitle=DIS Shooting Demo jlink.launcher=false -jlink.launcher.name=DisShooting +jlink.launcher.name=Networked_Graphics_MV3500_examples_DisShooting jnlp.codebase.type=no.codebase jnlp.descriptor=application jnlp.enabled=false diff --git a/examples/otherProjects/DisShooting/nbproject/project.xml b/examples/otherProjects/DisShooting/nbproject/project.xml index b796f516dd3b37e7d45b7d425590ed8b72142c3f..89fcfd69ad8b5313a10466ff59e2a671309422f5 100644 --- a/examples/otherProjects/DisShooting/nbproject/project.xml +++ b/examples/otherProjects/DisShooting/nbproject/project.xml @@ -3,7 +3,7 @@ <type>org.netbeans.modules.java.j2seproject</type> <configuration> <data xmlns="http://www.netbeans.org/ns/j2se-project/3"> - <name>DisShooting</name> + <name>Networked Graphics MV3500 examples DisShooting</name> <source-roots> <root id="src.dir"/> </source-roots> diff --git a/examples/otherProjects/WebsocketGateway/build.xml b/examples/otherProjects/WebsocketGateway/build.xml index 296a10f490c7ed1a0d2dcae3c0f3be79cc742158..746b6739a0711c4897f15ed94d7f06801c7664f4 100644 --- a/examples/otherProjects/WebsocketGateway/build.xml +++ b/examples/otherProjects/WebsocketGateway/build.xml @@ -7,7 +7,7 @@ <!-- the Compile on Save feature is turned off for the project. --> <!-- You can turn off the Compile on Save (or Deploy on Save) setting --> <!-- in the project's Project Properties dialog box.--> -<project name="WebsocketGateway" default="default" basedir="."> +<project name="Networked Graphics MV3500 examples WebsocketGateway" default="default" basedir="."> <description>Builds, tests, and runs the project WebsocketGateway.</description> <import file="nbproject/build-impl.xml"/> <!-- diff --git a/examples/otherProjects/WebsocketGateway/nbproject/build-impl.xml b/examples/otherProjects/WebsocketGateway/nbproject/build-impl.xml index 33a845ac7bb3ea86e3656cdecffaeaae935120a2..93d41767d8e4054cca308cb476a1c9e3a04df2d6 100644 --- a/examples/otherProjects/WebsocketGateway/nbproject/build-impl.xml +++ b/examples/otherProjects/WebsocketGateway/nbproject/build-impl.xml @@ -19,7 +19,7 @@ is divided into following sections: - cleanup --> -<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="WebsocketGateway-impl"> +<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="Networked_Graphics_MV3500_examples_WebsocketGateway-impl"> <fail message="Please build using Ant 1.8.0 or higher."> <condition> <not> @@ -644,7 +644,7 @@ is divided into following sections: </fileset> </union> <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/> - <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="WebsocketGateway" testname="TestNG tests" workingDir="${work.dir}"> + <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="Networked_Graphics_MV3500_examples_WebsocketGateway" testname="TestNG tests" workingDir="${work.dir}"> <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/> <propertyset> <propertyref prefix="test-sys-prop."/> @@ -741,7 +741,7 @@ is divided into following sections: <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}"> <isset property="test.method"/> </condition> - <condition else="-suitename WebsocketGateway -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> + <condition else="-suitename Networked_Graphics_MV3500_examples_WebsocketGateway -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> <matches pattern=".*\.xml" string="@{testClass}"/> </condition> <delete dir="${build.test.results.dir}" quiet="true"/> @@ -1082,7 +1082,7 @@ is divided into following sections: <delete file="${built-jar.properties}" quiet="true"/> </target> <target if="already.built.jar.${basedir}" name="-warn-already-built-jar"> - <echo level="warn" message="Cycle detected: WebsocketGateway was already built"/> + <echo level="warn" message="Cycle detected: Networked Graphics MV3500 examples WebsocketGateway was already built"/> </target> <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps"> <mkdir dir="${build.dir}"/> @@ -1753,7 +1753,7 @@ is divided into following sections: <delete file="${built-clean.properties}" quiet="true"/> </target> <target if="already.built.clean.${basedir}" name="-warn-already-built-clean"> - <echo level="warn" message="Cycle detected: WebsocketGateway was already built"/> + <echo level="warn" message="Cycle detected: Networked Graphics MV3500 examples WebsocketGateway was already built"/> </target> <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps"> <mkdir dir="${build.dir}"/> diff --git a/examples/otherProjects/WebsocketGateway/nbproject/project.properties b/examples/otherProjects/WebsocketGateway/nbproject/project.properties index ecad0e0a060e89989c67dcd1b4528a1e4c223181..bb741da47742f9c244135b33ff803834b5ab3be7 100644 --- a/examples/otherProjects/WebsocketGateway/nbproject/project.properties +++ b/examples/otherProjects/WebsocketGateway/nbproject/project.properties @@ -3,7 +3,7 @@ annotation.processing.enabled.in.editor=false annotation.processing.processors.list= annotation.processing.run.all.processors=true annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output -application.title=WebsocketGateway +application.title=Networked Graphics MV3500 examples WebsocketGateway application.vendor=mcgredo build.classes.dir=${build.dir}/classes build.classes.excludes=**/*.java,**/*.form @@ -91,7 +91,7 @@ javadoc.use=true javadoc.version=false javadoc.windowtitle=${application.title} Demonstration jlink.launcher=false -jlink.launcher.name=WebsocketGateway +jlink.launcher.name=Networked_Graphics_MV3500_examples_WebsocketGateway jnlp.codebase.type=no.codebase jnlp.descriptor=application jnlp.enabled=false diff --git a/examples/otherProjects/WebsocketGateway/nbproject/project.xml b/examples/otherProjects/WebsocketGateway/nbproject/project.xml index b7b65b9a3b7fa4f926c8ff09a4077d431c314dc8..6cccec58c27ebbf7f602c29790ff98cafab7eea6 100644 --- a/examples/otherProjects/WebsocketGateway/nbproject/project.xml +++ b/examples/otherProjects/WebsocketGateway/nbproject/project.xml @@ -3,7 +3,7 @@ <type>org.netbeans.modules.java.j2seproject</type> <configuration> <data xmlns="http://www.netbeans.org/ns/j2se-project/3"> - <name>WebsocketGateway</name> + <name>Networked Graphics MV3500 examples WebsocketGateway</name> <source-roots> <root id="src.dir"/> </source-roots> diff --git a/presentations/03_TCPIP.pptx b/presentations/03_TCPIP.pptx index 1a0eb7245b465139eba0b5d73ac6d2e19c673ac0..50a5ac95140cbe17b5a34ed591271e4f83b72036 100644 Binary files a/presentations/03_TCPIP.pptx and b/presentations/03_TCPIP.pptx differ diff --git a/presentations/04_TCPSocketsJava.pptx b/presentations/04_TCPSocketsJava.pptx index 5953fcce70f8b597bf0fa9985158147cea1e457c..d859916fabda47be9b56c407cfedfc6f804bc164 100644 Binary files a/presentations/04_TCPSocketsJava.pptx and b/presentations/04_TCPSocketsJava.pptx differ