diff --git a/.classpath b/.classpath
index 18c3c02..7864efc 100644
--- a/.classpath
+++ b/.classpath
@@ -2,7 +2,7 @@
-
+
@@ -14,6 +14,6 @@
-
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ba70776
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+bin/
+
+unused/
+
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ 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
+
+ http://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.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..3367693
--- /dev/null
+++ b/README.md
@@ -0,0 +1,78 @@
+# DistMaker
+
+
+## Description
+DistMaker provides a capability to enable developers to package a Java client application for any target platform (Linux, MacOS, and Windows). A DistMaker enabled package allows for easy distribution via its in-app update capability.
+
+Currently DistMaker is distributed in source form only, so it will need to be compiled. See the section: **Building DistMaker**.
+
+
+## More details
+DistMaker is a software toolkit which allows a software developer to develop applications that have a built-in update mechanism.
+
+The update mechanism can be manually triggered by an end user or through an auto update mechanism.
+
+DistMaker provides a capability to allow a software developer to deploy (or remove) updates to a deployment site.
+
+
+## Usage
+Please read the ./doc/QuickStartGuide.pdf for instructions on:
+
+- Source code changes to make the application DistMaker enabled
+- Setting up the deploy site for the DistMaker application
+- Deploying the DistMaker application
+
+
+## Dependencies
+A DistMaker enabled (Java) application has the following dependencies:
+
+- Java 17+
+- Apache Commons Compress 1.15+
+- Guava 18.0+
+- Glum 2.0.0+
+- MigLayout 3.7.2+
+
+An additional dependency for DistMaker enabled applications on the Windows platform is:
+
+- Lanch4J 3.14
+
+To package and distribute a DistMaker application the following are the software (server side) dependencies:
+
+- Java 17+
+- Python 3.6+
+
+
+Note the following:
+
+- In theory DistMaker should work with later versions of the above listed software.
+- To allow for distribution of updates, you will need to have permissions to a web server.
+
+
+## Building DistMaker
+To build a DistMaker release from the console, run the following command:
+
+ ./tools/buildRelease
+
+The following sofware are dependencies for compiling DistMaker:
+
+- JDK 17+
+- Python 3.6+
+- Apache Ant 1.10.8+
+
+Note, you will have to edit the script, ./tools/buildRelease, so that the variables antPath and jdkPath are relative to your system.
+
+
+## Legal Notice
+DistMaker utilizes a number of copyrighted products.
+
+A listing of all copyrights can be found in the folder:
+
+ ./doc/legal/
+
+Each copyrighted product has a textual file with a naming convention of:
+
+ License.<aProductName>.txt
+
+Note that <aProductName> corresponds to the formal product name.
+
+
diff --git a/doc/ReadMe.txt b/doc/ReadMe.txt
index 616f8e3..025ae98 100644
--- a/doc/ReadMe.txt
+++ b/doc/ReadMe.txt
@@ -1,11 +1,11 @@
Product: DistMaker
-Version: 0.57
+Version: 0.70
Requires:
-- Java 8
-- Python 2.7
+- Java 17
+- Python 3.6
diff --git a/lib/glum-2.0.0-RC3-src.jar b/lib/glum-2.0.0-RC3-src.jar
deleted file mode 100644
index cba49ba..0000000
Binary files a/lib/glum-2.0.0-RC3-src.jar and /dev/null differ
diff --git a/lib/glum-2.0.0-RC3.jar b/lib/glum-2.0.0-RC3.jar
deleted file mode 100644
index 5fb92dd..0000000
Binary files a/lib/glum-2.0.0-RC3.jar and /dev/null differ
diff --git a/lib/glum-2.0.0-src.jar b/lib/glum-2.0.0-src.jar
new file mode 100644
index 0000000..11c3d79
Binary files /dev/null and b/lib/glum-2.0.0-src.jar differ
diff --git a/lib/glum-2.0.0.jar b/lib/glum-2.0.0.jar
new file mode 100644
index 0000000..fee8bde
Binary files /dev/null and b/lib/glum-2.0.0.jar differ
diff --git a/release/README.md b/release/README.md
new file mode 100644
index 0000000..f92dbce
--- /dev/null
+++ b/release/README.md
@@ -0,0 +1,11 @@
+# Purpose
+
+This folder is the destination where built releases of DistMaker are placed.
+
+Please do not remove this folder.
+
+
+# Building DistMaker
+To build a new release run:
+
+ ./tools/buildRelease
diff --git a/script/appleUtils.py b/script/appleUtils.py
index 4ae38b0..47fea32 100644
--- a/script/appleUtils.py
+++ b/script/appleUtils.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import copy
import math
import os
@@ -283,7 +297,7 @@ def buildDistTree(aBuildPath, aRootPath, aArgs, aJreNode):
# Update the .DS_Store file to reflect the new volume name
srcPath = os.path.join(aRootPath, '.DS_Store')
- classPath = appInstallRoot + '/lib/glum-2.0.0-RC3.jar:' + appInstallRoot + '/lib/distMaker-0.61.jar:' + appInstallRoot + '/lib/guava-18.0.jar'
+ classPath = appInstallRoot + '/lib/glum-2.0.0.jar:' + appInstallRoot + '/lib/distMaker-0.70.jar:' + appInstallRoot + '/lib/guava-18.0.jar'
cmd = ['java', '-cp', classPath, 'dsstore.MainApp', srcPath, appName]
proc = miscUtils.executeAndLog(cmd, "\t\tdsstore.MainApp: ")
if proc.returncode != 0:
diff --git a/script/buildDist.py b/script/buildDist.py
index 9a2ce2c..dc2957b 100755
--- a/script/buildDist.py
+++ b/script/buildDist.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import argparse
import os
import platform
diff --git a/script/deployAppDist.py b/script/deployAppDist.py
index 94673fd..94d1322 100755
--- a/script/deployAppDist.py
+++ b/script/deployAppDist.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import argparse
import getpass
import math
diff --git a/script/deployJreDist.py b/script/deployJreDist.py
index ed359ba..18ffa0f 100755
--- a/script/deployJreDist.py
+++ b/script/deployJreDist.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import argparse
import collections
import getpass
diff --git a/script/jreUtils.py b/script/jreUtils.py
index f2e7169..feb7ae8 100644
--- a/script/jreUtils.py
+++ b/script/jreUtils.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import glob
import os
import re
diff --git a/script/linuxUtils.py b/script/linuxUtils.py
index abaddca..288dba0 100644
--- a/script/linuxUtils.py
+++ b/script/linuxUtils.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import copy
import os
import shutil
diff --git a/script/logUtils.py b/script/logUtils.py
index 617e13b..fb76227 100644
--- a/script/logUtils.py
+++ b/script/logUtils.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import hashlib
import os
import time
diff --git a/script/miscUtils.py b/script/miscUtils.py
index ed2750d..1479cd0 100644
--- a/script/miscUtils.py
+++ b/script/miscUtils.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import argparse
import hashlib
import os
diff --git a/script/windowsUtils.py b/script/windowsUtils.py
index 21ca113..465aef2 100644
--- a/script/windowsUtils.py
+++ b/script/windowsUtils.py
@@ -1,5 +1,19 @@
#! /usr/bin/env python3
+# Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+#
+# 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
+#
+# http://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.
+
import copy
import glob
import os
diff --git a/src/distMaker/DistApp.java b/src/distMaker/DistApp.java
index 26d626b..0261cab 100644
--- a/src/distMaker/DistApp.java
+++ b/src/distMaker/DistApp.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
import glum.version.PlainVersion;
@@ -15,7 +28,7 @@ import glum.version.Version;
public class DistApp
{
/** The DistMaker version is defined here. */
- public static final Version version = new PlainVersion(0, 61, 0);
+ public static final Version version = new PlainVersion(0, 70, 0);
/**
* Main entry point that will print out the version of DistMaker to stdout.
diff --git a/src/distMaker/DistMakerEngine.java b/src/distMaker/DistMakerEngine.java
index 43c1139..ee698a4 100644
--- a/src/distMaker/DistMakerEngine.java
+++ b/src/distMaker/DistMakerEngine.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
import java.awt.event.ComponentAdapter;
@@ -141,14 +154,12 @@ public class DistMakerEngine
public UpdateStatus isUpToDate()
{
var task = new BufferTask();
-// LoggingTask task = new LoggingTask();
String appName = currRelease.getName();
List unsortedReleaseL = DistUtils.getAvailableAppReleases(task, updateSiteUrl, appName, refCredential);
if (unsortedReleaseL == null)
{
// The update check failed, so return a status of false with a message about the problem
-// String msg = Joiner.on("; ").join(task.getMessages());
var msg = task.getBuffer();
return new UpdateStatus(msg);
}
diff --git a/src/distMaker/DistUtils.java b/src/distMaker/DistUtils.java
index a41cd45..f068fbe 100644
--- a/src/distMaker/DistUtils.java
+++ b/src/distMaker/DistUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
import java.io.*;
diff --git a/src/distMaker/ErrorDM.java b/src/distMaker/ErrorDM.java
index 4186ca8..f0c1981 100644
--- a/src/distMaker/ErrorDM.java
+++ b/src/distMaker/ErrorDM.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
/**
diff --git a/src/distMaker/ErrorMsg.java b/src/distMaker/ErrorMsg.java
index dbb15ce..99e6030 100644
--- a/src/distMaker/ErrorMsg.java
+++ b/src/distMaker/ErrorMsg.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
/**
diff --git a/src/distMaker/LookUp.java b/src/distMaker/LookUp.java
index 3b77e27..ad5f68b 100644
--- a/src/distMaker/LookUp.java
+++ b/src/distMaker/LookUp.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
public enum LookUp
diff --git a/src/distMaker/MiscUtils.java b/src/distMaker/MiscUtils.java
index 85f7c36..bfa3965 100644
--- a/src/distMaker/MiscUtils.java
+++ b/src/distMaker/MiscUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
import java.io.*;
diff --git a/src/distMaker/UpdateCheckListener.java b/src/distMaker/UpdateCheckListener.java
index 0c90abd..0c72bf6 100644
--- a/src/distMaker/UpdateCheckListener.java
+++ b/src/distMaker/UpdateCheckListener.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
/**
diff --git a/src/distMaker/UpdateStatus.java b/src/distMaker/UpdateStatus.java
index 8401711..8efb621 100644
--- a/src/distMaker/UpdateStatus.java
+++ b/src/distMaker/UpdateStatus.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker;
public class UpdateStatus
diff --git a/src/distMaker/gui/MemoryConfigPanel.java b/src/distMaker/gui/MemoryConfigPanel.java
index 5fb40f9..29af1c6 100644
--- a/src/distMaker/gui/MemoryConfigPanel.java
+++ b/src/distMaker/gui/MemoryConfigPanel.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.gui;
import static distMaker.platform.MemUtils.GB_SIZE;
diff --git a/src/distMaker/gui/PickReleasePanel.java b/src/distMaker/gui/PickReleasePanel.java
index 1ae9e45..02252b3 100644
--- a/src/distMaker/gui/PickReleasePanel.java
+++ b/src/distMaker/gui/PickReleasePanel.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.gui;
import java.awt.*;
diff --git a/src/distMaker/jre/AppLauncherRelease.java b/src/distMaker/jre/AppLauncherRelease.java
index c4b0826..b63ad95 100644
--- a/src/distMaker/jre/AppLauncherRelease.java
+++ b/src/distMaker/jre/AppLauncherRelease.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.jre;
import glum.digest.Digest;
diff --git a/src/distMaker/jre/AppLauncherUtils.java b/src/distMaker/jre/AppLauncherUtils.java
index 38add77..2e2c2a4 100644
--- a/src/distMaker/jre/AppLauncherUtils.java
+++ b/src/distMaker/jre/AppLauncherUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.jre;
import java.io.*;
diff --git a/src/distMaker/jre/JreRelease.java b/src/distMaker/jre/JreRelease.java
index f8586c9..705e2f3 100644
--- a/src/distMaker/jre/JreRelease.java
+++ b/src/distMaker/jre/JreRelease.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.jre;
import distMaker.platform.Architecture;
diff --git a/src/distMaker/jre/JreUtils.java b/src/distMaker/jre/JreUtils.java
index bc29ab0..0c871e1 100644
--- a/src/distMaker/jre/JreUtils.java
+++ b/src/distMaker/jre/JreUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.jre;
import java.io.*;
diff --git a/src/distMaker/jre/JreVersion.java b/src/distMaker/jre/JreVersion.java
index dbb2d53..1acf726 100644
--- a/src/distMaker/jre/JreVersion.java
+++ b/src/distMaker/jre/JreVersion.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.jre;
import java.util.ArrayList;
diff --git a/src/distMaker/node/AppCatalog.java b/src/distMaker/node/AppCatalog.java
index 886ed78..2fdb76b 100644
--- a/src/distMaker/node/AppCatalog.java
+++ b/src/distMaker/node/AppCatalog.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.node;
import java.util.*;
diff --git a/src/distMaker/node/AppRelease.java b/src/distMaker/node/AppRelease.java
index 9f9b717..9722c1c 100644
--- a/src/distMaker/node/AppRelease.java
+++ b/src/distMaker/node/AppRelease.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.node;
import distMaker.LookUp;
diff --git a/src/distMaker/node/FileNode.java b/src/distMaker/node/FileNode.java
index 5f1ac62..f357590 100644
--- a/src/distMaker/node/FileNode.java
+++ b/src/distMaker/node/FileNode.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.node;
import java.io.File;
diff --git a/src/distMaker/node/Node.java b/src/distMaker/node/Node.java
index 22ced2c..717d79b 100644
--- a/src/distMaker/node/Node.java
+++ b/src/distMaker/node/Node.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.node;
import java.io.File;
diff --git a/src/distMaker/node/PathNode.java b/src/distMaker/node/PathNode.java
index 69cfedb..6a09ef1 100644
--- a/src/distMaker/node/PathNode.java
+++ b/src/distMaker/node/PathNode.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.node;
import java.io.File;
diff --git a/src/distMaker/platform/AppleUtils.java b/src/distMaker/platform/AppleUtils.java
index 24e7b29..1acbde2 100644
--- a/src/distMaker/platform/AppleUtils.java
+++ b/src/distMaker/platform/AppleUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
import java.io.*;
diff --git a/src/distMaker/platform/Architecture.java b/src/distMaker/platform/Architecture.java
index e6abd4e..ff52cda 100644
--- a/src/distMaker/platform/Architecture.java
+++ b/src/distMaker/platform/Architecture.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
/**
diff --git a/src/distMaker/platform/ArchitectureUtils.java b/src/distMaker/platform/ArchitectureUtils.java
index bf1a7ec..8565218 100644
--- a/src/distMaker/platform/ArchitectureUtils.java
+++ b/src/distMaker/platform/ArchitectureUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
/**
diff --git a/src/distMaker/platform/LinuxUtils.java b/src/distMaker/platform/LinuxUtils.java
index b165a25..ec10a60 100644
--- a/src/distMaker/platform/LinuxUtils.java
+++ b/src/distMaker/platform/LinuxUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
import java.io.*;
diff --git a/src/distMaker/platform/MemUtils.java b/src/distMaker/platform/MemUtils.java
index e5ec9b9..e90d13f 100644
--- a/src/distMaker/platform/MemUtils.java
+++ b/src/distMaker/platform/MemUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
import java.lang.management.ManagementFactory;
diff --git a/src/distMaker/platform/Platform.java b/src/distMaker/platform/Platform.java
index c3636c2..1cb7804 100644
--- a/src/distMaker/platform/Platform.java
+++ b/src/distMaker/platform/Platform.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
/**
diff --git a/src/distMaker/platform/PlatformUtils.java b/src/distMaker/platform/PlatformUtils.java
index 53db47c..c3db9cb 100644
--- a/src/distMaker/platform/PlatformUtils.java
+++ b/src/distMaker/platform/PlatformUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
import java.io.File;
diff --git a/src/distMaker/platform/WindowsUtils.java b/src/distMaker/platform/WindowsUtils.java
index 0b66d1e..d585622 100644
--- a/src/distMaker/platform/WindowsUtils.java
+++ b/src/distMaker/platform/WindowsUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.platform;
import java.io.*;
diff --git a/src/distMaker/utils/DeployUtils.java b/src/distMaker/utils/DeployUtils.java
index 26565d7..9b5e8b1 100644
--- a/src/distMaker/utils/DeployUtils.java
+++ b/src/distMaker/utils/DeployUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.utils;
import java.awt.event.ActionEvent;
diff --git a/src/distMaker/utils/ParseUtils.java b/src/distMaker/utils/ParseUtils.java
index bbcb79b..ce063f9 100644
--- a/src/distMaker/utils/ParseUtils.java
+++ b/src/distMaker/utils/ParseUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package distMaker.utils;
import distMaker.DistUtils;
diff --git a/src/dsstore/AliasRecord.java b/src/dsstore/AliasRecord.java
index d84b1bc..f10f072 100644
--- a/src/dsstore/AliasRecord.java
+++ b/src/dsstore/AliasRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/BlockDir.java b/src/dsstore/BlockDir.java
index 61b8766..6a9cb57 100644
--- a/src/dsstore/BlockDir.java
+++ b/src/dsstore/BlockDir.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/BufUtils.java b/src/dsstore/BufUtils.java
index ca08d2a..a41738c 100644
--- a/src/dsstore/BufUtils.java
+++ b/src/dsstore/BufUtils.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/MainApp.java b/src/dsstore/MainApp.java
index 1a8d6f5..afb5c5c 100644
--- a/src/dsstore/MainApp.java
+++ b/src/dsstore/MainApp.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore;
import glum.task.*;
@@ -12,9 +25,9 @@ import java.util.*;
import dsstore.record.*;
/**
- * Most of the decoding of the .DS_store is described in the following source.
+ * Most of the decoding of the .DS_store is described in the following source.
* Source:
- * http://search.cpan.org/~wiml/Mac-Finder-DSStore/DSStoreFormat.pod#FILE_FORMAT
+ * http://search.cpan.org/~wiml/Mac-Finder-DSStore/DSStoreFormat.pod#FILE_FORMAT
*/
public class MainApp
{
@@ -42,7 +55,7 @@ public class MainApp
volumeName = aVolumeName;
}
-
+
public void writeStore(File aFile)
{
// Ensure we have a valid dataBuf
@@ -68,7 +81,7 @@ public class MainApp
/**
* Method to read the actual store contents.
- *
+ *
* @return True if we successfully read the store
*/
public boolean readStore(File aFile)
@@ -79,7 +92,7 @@ public class MainApp
System.err.println("File does note exist: " + aFile);
return false;
}
-
+
dataBuf = null;
try (FileZinStream iStream = new FileZinStream(aFile))
{
@@ -87,12 +100,12 @@ public class MainApp
List blockDirL;
String dmgMagicKey;
int fileMagicKey;
-int allocBlockOffset1, allocBlockOffset2, allocBlockSize;
-int blockCnt, tmpSize, seekDiff, dirCnt;
+int allocBlockOffset1, allocBlockOffset2, allocBlockSize;
+int blockCnt, tmpSize, seekDiff, dirCnt;
int blockAddrArr[];
-
+
int fileSize = (int)aFile.length();
-
+
// DS_Store magic key: 0x0001
fileMagicKey = iStream.readInt();
if (fileMagicKey != 0x0001)
@@ -110,79 +123,79 @@ int blockAddrArr[];
allocBlockOffset1 = dataBuf.getInt();
allocBlockSize = dataBuf.getInt();
allocBlockOffset2 = dataBuf.getInt();
-
+
// Check the header block validity
if (dmgMagicKey.equals("Bud1") == false)
throw new RuntimeException("Header magic key does not equal: 'Bud1' Found: '" + dmgMagicKey + "'");
-
+
if (allocBlockOffset1 != allocBlockOffset2)
throw new RuntimeException("Allocator block offset mismatch: " + allocBlockOffset1 + " != " + allocBlockOffset2);
-
-
-
+
+
+
// Advance to the allocator section
dataBuf.position(allocBlockOffset1);
-
+
blockCnt = dataBuf.getInt();
dataBuf.getInt(); // Unknown
-
+
blockAddrArr = new int[blockCnt];
for (int c1 = 0; c1 < blockCnt; c1++)
{
blockAddrArr[c1] = dataBuf.getInt();
-
-int blkLen, blkPos;
-blkLen = 1 << (blockAddrArr[c1] & 0x1F);
-blkPos = (blockAddrArr[c1] >> 5) * 32;
-refTask.logRegln("BlockAddr[" + c1 + "] -> Size: " + blkLen + " Offset: " + blkPos);
-//The entries in the block address table are what I call block addresses. Each address is a packed offset+size.
-//The least-significant 5 bits of the number indicate the block's size, as a power of 2 (from 2^5 to 2^31). If those bits are masked off, the result
-//is the starting offset of the block (keeping in mind the 4-byte fudge factor). Since the lower 5 bits are unusable to store an offset, blocks must be
+int blkLen, blkPos;
+blkLen = 1 << (blockAddrArr[c1] & 0x1F);
+blkPos = (blockAddrArr[c1] >> 5) * 32;
+refTask.logRegln("BlockAddr[" + c1 + "] -> Size: " + blkLen + " Offset: " + blkPos);
+
+//The entries in the block address table are what I call block addresses. Each address is a packed offset+size.
+//The least-significant 5 bits of the number indicate the block's size, as a power of 2 (from 2^5 to 2^31). If those bits are masked off, the result
+//is the starting offset of the block (keeping in mind the 4-byte fudge factor). Since the lower 5 bits are unusable to store an offset, blocks must be
//allocated on 32-byte boundaries, and as a side effect the minimum block size is 32 bytes (in which case the least significant 5 bits are equal to 0x05).
}
-
+
// Seek to the end of %256 items (which are unused)
seekDiff = 0;
if (blockCnt % 256 != 0)
seekDiff = (256 - blockCnt%256) * 4;
-
+
dataBuf.position(dataBuf.position() + seekDiff);
-
+
// Read the block directories
dirCnt = dataBuf.getInt();
refTask.logRegln("Block directory count: " + dirCnt);
-
+
blockDirL = new ArrayList<>(dirCnt);
for (int c1 = 0; c1 < dirCnt; c1++)
blockDirL.add(new BlockDir(dataBuf));
-
-
+
+
// Read the free lists
-int freeCnt;
+int freeCnt;
refTask.logRegln("Reading freelists...");
for (int c1 = 0; c1 < 32; c1++)
{
freeCnt = dataBuf.getInt();
- refTask.logReg("[" + c1 + "]: " + freeCnt + " Offsets: ");
+ refTask.logReg("[" + c1 + "]: " + freeCnt + " Offsets: ");
for (int c2 = 0; c2 < freeCnt; c2++)
refTask.logReg(dataBuf.getInt() + ",");
refTask.logRegln("");
}
-
-
-
+
+
+
// Read the DSDB structure
-// TODO: Remove hard coded value
+// TODO: Remove hard coded value
dataBuf.position(64);
readDsdbNode(dataBuf);
-
-// TODO: Remove hard coded value
+
+// TODO: Remove hard coded value
dataBuf.position(4096);
readRecords(dataBuf);
-
+
// The 32-byte header has the following fields:
//
// Magic number Bud1 (42 75 64 31)
@@ -196,16 +209,16 @@ refTask.logRegln("Reading freelists...");
aExp.printStackTrace();
return false;
}
-
+
return true;
}
-
-
+
+
public void readRecords(ByteBuffer aBuf)
{
- List recordL;
+ List recordL;
BKGDRecord bkgdRecord;
- Record tmpRecord;
+ dsstore.record.Record tmpRecord;
int pCode, numRecords;
String name, id, type;
int begPos;
@@ -214,17 +227,17 @@ refTask.logRegln("Reading freelists...");
begPos = aBuf.position();
pCode = aBuf.getInt();
numRecords = aBuf.getInt();
-
+
bkgdRecord = null;
recordL = new ArrayList<>(numRecords);
for (int c1 = 0; c1 < numRecords; c1++)
{
BufUtils.seek(aBuf, 2); // empty
name = BufUtils.readStringUtf16(aBuf);
-
+
id = BufUtils.readRawAsciiStr(aBuf, 4);
type = BufUtils.readRawAsciiStr(aBuf, 4);
-
+
// Read the Records
if (id.equals("pict") == true && type.equals(DT_blob) == true)
{
@@ -248,41 +261,41 @@ refTask.logRegln("Reading freelists...");
tmpRecord = new LongRecord(name, id, type);
else
tmpRecord = new ShorRecord(name, id, type);
-
+
tmpRecord.readPayload(aBuf);
recordL.add(tmpRecord);
refTask.logRegln("Found Name: <" + name + "> recordId: " + id + " dataType: " + type + " payloadSize: " + tmpRecord.getSize());
}
-
-
+
+
// TODO: This should not be in the read method...
// Update the records to reflect the new volumeName
if (volumeName != null)
{
- for (Record aRecord : recordL)
+ for (var aRecord : recordL)
{
if (aRecord instanceof PictRecord)
((PictRecord)aRecord).getAliasRecord().setVolumeName(volumeName);
-
-// if (aRecord.getName().equals(" ") == false && aRecord.getId().equals("Iloc") == true)
+
+// if (aRecord.getName().equals(" ") == false && aRecord.getId().equals("Iloc") == true)
if (aRecord.getName().endsWith(".app") == true && aRecord.getId().equals("Iloc") == true)
aRecord.setName(volumeName + ".app");
else if (aRecord.getName().equals(" ") == true && aRecord.getId().equals("Iloc") == true)
aRecord.setName("Applications");
}
-
+
// Sort the list alphabetically
Collections.sort(recordL);
-
-
+
+
// Output back to the ByteBuf
aBuf.position(begPos);
-
+
aBuf.putInt(pCode);
aBuf.putInt(numRecords);
-
- for (Record aRecord : recordL)
+
+ for (var aRecord : recordL)
{
aBuf.putShort((short)0);
aRecord.writeHeader(aBuf);
@@ -290,9 +303,9 @@ refTask.logRegln("Reading freelists...");
}
}
}
-
-
-
+
+
+
@@ -322,8 +335,8 @@ refTask.logRegln("Reading freelists...");
refTask.logRegln("rootNodes: " + numNodes);
refTask.logRegln("valConst: " + valConst);
}
-
-
+
+
/**
* Application main entry point
*/
diff --git a/src/dsstore/ext/ExtInfo.java b/src/dsstore/ext/ExtInfo.java
index 567874f..518eefe 100644
--- a/src/dsstore/ext/ExtInfo.java
+++ b/src/dsstore/ext/ExtInfo.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.ext;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/ext/RawExtInfo.java b/src/dsstore/ext/RawExtInfo.java
index f33552f..17e6f53 100644
--- a/src/dsstore/ext/RawExtInfo.java
+++ b/src/dsstore/ext/RawExtInfo.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.ext;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/ext/StrExtInfo.java b/src/dsstore/ext/StrExtInfo.java
index 726fcef..5fbe53b 100644
--- a/src/dsstore/ext/StrExtInfo.java
+++ b/src/dsstore/ext/StrExtInfo.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.ext;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/BKGDRecord.java b/src/dsstore/record/BKGDRecord.java
index 196871f..22c76bf 100644
--- a/src/dsstore/record/BKGDRecord.java
+++ b/src/dsstore/record/BKGDRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/BlobRecord.java b/src/dsstore/record/BlobRecord.java
index d98e0cd..ab822df 100644
--- a/src/dsstore/record/BlobRecord.java
+++ b/src/dsstore/record/BlobRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/BoolRecord.java b/src/dsstore/record/BoolRecord.java
index 8f95ea0..c13bfb3 100644
--- a/src/dsstore/record/BoolRecord.java
+++ b/src/dsstore/record/BoolRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/IlocRecord.java b/src/dsstore/record/IlocRecord.java
index 87e2ad8..6b36ffc 100644
--- a/src/dsstore/record/IlocRecord.java
+++ b/src/dsstore/record/IlocRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/LongRecord.java b/src/dsstore/record/LongRecord.java
index 0832e3c..398102c 100644
--- a/src/dsstore/record/LongRecord.java
+++ b/src/dsstore/record/LongRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/PictRecord.java b/src/dsstore/record/PictRecord.java
index cc93e60..2a5775c 100644
--- a/src/dsstore/record/PictRecord.java
+++ b/src/dsstore/record/PictRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/Record.java b/src/dsstore/record/Record.java
index 2c4efae..841bd6e 100644
--- a/src/dsstore/record/Record.java
+++ b/src/dsstore/record/Record.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/ShorRecord.java b/src/dsstore/record/ShorRecord.java
index 25ae020..5185700 100644
--- a/src/dsstore/record/ShorRecord.java
+++ b/src/dsstore/record/ShorRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/src/dsstore/record/UstrRecord.java b/src/dsstore/record/UstrRecord.java
index b7abd1b..f493172 100644
--- a/src/dsstore/record/UstrRecord.java
+++ b/src/dsstore/record/UstrRecord.java
@@ -1,3 +1,16 @@
+// Copyright (C) 2024 The Johns Hopkins University Applied Physics Laboratory LLC
+//
+// 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
+//
+// http://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.
package dsstore.record;
import java.nio.ByteBuffer;
diff --git a/tools/build.xml b/tools/build.xml
index cd309b8..5e238c1 100644
--- a/tools/build.xml
+++ b/tools/build.xml
@@ -20,7 +20,7 @@
-
+
@@ -32,7 +32,7 @@
-
+
diff --git a/tools/buildRelease b/tools/buildRelease
index 7828e03..bdb9652 100755
--- a/tools/buildRelease
+++ b/tools/buildRelease
@@ -11,20 +11,20 @@ import traceback
# Define the (baseline) version
-baseVersion = "0.61"
+baseVersion = "0.70"
# Define relevant base names
appBaseName = 'DistMaker'
libBaseName = 'distMaker'
# Define the libraries DistMaker depends on
-libList = ['glum-2.0.0-RC3.jar', 'guava-18.0.jar']
+libList = ['glum-2.0.0.jar', 'guava-18.0.jar']
#libList += ['commons-compress-1.15.jar']
# Define the paths to various executables
antPath = '/spare/apache/apache-ant-1.10.8'
antExe = os.path.join(antPath, 'bin/ant')
-jdkPath = '/spare/jdk-11'
+jdkPath = '/spare/jdk-17'
jarExe = os.path.join(jdkPath, 'bin/jar')
javaExe = os.path.join(jdkPath, 'bin/java')