From 3b9ac082d5f70ca7195e427aabaa1357b58a97ab Mon Sep 17 00:00:00 2001
From: brutzman <brutzman@nps.edu>
Date: Wed, 28 Feb 2018 11:36:03 -0800
Subject: [PATCH] update project properties for sharing .jar files

---
 projects/Assignments/nbproject/build-impl.xml | 19 ++++++++++++++-----
 .../Assignments/nbproject/genfiles.properties |  6 +++---
 .../Assignments/nbproject/project.properties  |  7 ++++++-
 projects/Assignments/nbproject/project.xml    |  1 +
 4 files changed, 24 insertions(+), 9 deletions(-)

diff --git a/projects/Assignments/nbproject/build-impl.xml b/projects/Assignments/nbproject/build-impl.xml
index 60fe2289f9..6072af6763 100644
--- a/projects/Assignments/nbproject/build-impl.xml
+++ b/projects/Assignments/nbproject/build-impl.xml
@@ -125,6 +125,7 @@ is divided into following sections:
         </condition>
         <condition property="have.sources">
             <or>
+                <available file="${src.homework3.dir}"/>
                 <available file="${src.homework1.dir}"/>
                 <available file="${src.homework2.dir}"/>
             </or>
@@ -229,6 +230,7 @@ is divided into following sections:
         <!-- You can override this target in the ../build.xml file. -->
     </target>
     <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
+        <fail unless="src.homework3.dir">Must set src.homework3.dir</fail>
         <fail unless="src.homework1.dir">Must set src.homework1.dir</fail>
         <fail unless="src.homework2.dir">Must set src.homework2.dir</fail>
         <fail unless="build.dir">Must set build.dir</fail>
@@ -251,7 +253,7 @@ is divided into following sections:
     </target>
     <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.homework1.dir}:${src.homework2.dir}" name="srcdir"/>
+            <attribute default="${src.homework3.dir}:${src.homework1.dir}:${src.homework2.dir}" name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
             <attribute default="${javac.processorpath}" name="processorpath"/>
@@ -292,7 +294,7 @@ is divided into following sections:
     </target>
     <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.homework1.dir}:${src.homework2.dir}" name="srcdir"/>
+            <attribute default="${src.homework3.dir}:${src.homework1.dir}:${src.homework2.dir}" name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
             <attribute default="${javac.processorpath}" name="processorpath"/>
@@ -325,7 +327,7 @@ is divided into following sections:
     </target>
     <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
         <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
-            <attribute default="${src.homework1.dir}:${src.homework2.dir}" name="srcdir"/>
+            <attribute default="${src.homework3.dir}:${src.homework1.dir}:${src.homework2.dir}" name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
             <sequential>
@@ -913,11 +915,12 @@ is divided into following sections:
                 <include name="*"/>
             </dirset>
         </pathconvert>
-        <j2seproject3:depend srcdir="${src.homework1.dir}:${src.homework2.dir}:${build.generated.subdirs}"/>
+        <j2seproject3:depend srcdir="${src.homework3.dir}:${src.homework1.dir}:${src.homework2.dir}:${build.generated.subdirs}"/>
     </target>
     <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
         <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
         <copy todir="${build.classes.dir}">
+            <fileset dir="${src.homework3.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.homework1.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${src.homework2.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
         </copy>
@@ -940,7 +943,7 @@ is divided into following sections:
     <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
         <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
         <j2seproject3:force-recompile/>
-        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.homework1.dir}:${src.homework2.dir}"/>
+        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.homework3.dir}:${src.homework1.dir}:${src.homework2.dir}"/>
     </target>
     <target name="-post-compile-single">
         <!-- Empty placeholder for easier customization. -->
@@ -1206,6 +1209,9 @@ is divided into following sections:
             <classpath>
                 <path path="${javac.classpath}"/>
             </classpath>
+            <fileset dir="${src.homework3.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}">
+                <filename name="**/*.java"/>
+            </fileset>
             <fileset dir="${src.homework1.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}">
                 <filename name="**/*.java"/>
             </fileset>
@@ -1219,6 +1225,9 @@ is divided into following sections:
             <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>
         </javadoc>
         <copy todir="${dist.javadoc.dir}">
+            <fileset dir="${src.homework3.dir}" excludes="${excludes}" includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
             <fileset dir="${src.homework1.dir}" excludes="${excludes}" includes="${includes}">
                 <filename name="**/doc-files/**"/>
             </fileset>
diff --git a/projects/Assignments/nbproject/genfiles.properties b/projects/Assignments/nbproject/genfiles.properties
index f788708c27..92dc0a7415 100644
--- a/projects/Assignments/nbproject/genfiles.properties
+++ b/projects/Assignments/nbproject/genfiles.properties
@@ -1,8 +1,8 @@
-build.xml.data.CRC32=e359545b
+build.xml.data.CRC32=faabc814
 build.xml.script.CRC32=71581cc3
 build.xml.stylesheet.CRC32=8064a381@1.80.1.48
 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
 # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
-nbproject/build-impl.xml.data.CRC32=e359545b
-nbproject/build-impl.xml.script.CRC32=a45f5f0d
+nbproject/build-impl.xml.data.CRC32=faabc814
+nbproject/build-impl.xml.script.CRC32=3800b3a5
 nbproject/build-impl.xml.stylesheet.CRC32=830a3534@1.80.1.48
diff --git a/projects/Assignments/nbproject/project.properties b/projects/Assignments/nbproject/project.properties
index aa4935a7e2..dfc77e1dfa 100644
--- a/projects/Assignments/nbproject/project.properties
+++ b/projects/Assignments/nbproject/project.properties
@@ -29,9 +29,13 @@ dist.jar=${dist.dir}/Assignments__MV3500_Homework.jar
 dist.javadoc.dir=${dist.dir}/javadoc
 endorsed.classpath=
 excludes=
+file.reference.dis-enums_1.1.jar=lib/dis-enums_1.1.jar
+file.reference.open-dis_4.16.jar=lib/open-dis_4.16.jar
 includes=**
 jar.compress=false
-javac.classpath=
+javac.classpath=\
+    ${file.reference.dis-enums_1.1.jar}:\
+    ${file.reference.open-dis_4.16.jar}
 # Space-separated list of extra javac options
 javac.compilerargs=
 javac.deprecation=false
@@ -74,3 +78,4 @@ run.test.classpath=\
 source.encoding=UTF-8
 src.homework1.dir=homework1
 src.homework2.dir=homework2
+src.homework3.dir=homework3
diff --git a/projects/Assignments/nbproject/project.xml b/projects/Assignments/nbproject/project.xml
index e044e58933..98fefab651 100644
--- a/projects/Assignments/nbproject/project.xml
+++ b/projects/Assignments/nbproject/project.xml
@@ -5,6 +5,7 @@
         <data xmlns="http://www.netbeans.org/ns/j2se-project/3">
             <name>Assignments: MV3500 Homework</name>
             <source-roots>
+                <root id="src.homework3.dir"/>
                 <root id="src.homework1.dir"/>
                 <root id="src.homework2.dir"/>
             </source-roots>
-- 
GitLab