Commit Graph

33 Commits

Author SHA1 Message Date
Maschell
3eb299d3a1 Formatting and organizing imports 2019-04-26 16:44:57 +02:00
Maschell
ddee4b9f5d Refactor and fix FST parsing.
- Fix a bug when parsing certain FST of system titles.
- Remove the Content reference on the FSTEntry. The Content can get be get via the TMD using getContentByIndex. To get the FSTInfo for the content use FSTUtils.getFSTInfoForContent.
- Children are added manually to a FSTEntry (getting ride of side effects).
- The NUSTitleLoader sets the FST to the dataprovider. The WUDDataProvider needs the FST to get access to the FSTContentInfo (=> calculating the offsets of the content files).
- Remove some unused functions from the FSTEntry class
- To get the FSTEntries for the certain content use getFSTEntriesByContentIndex
2019-04-26 10:08:09 +02:00
Maschell
6981345467 Force the use "/" as the path separator internally 2019-04-24 13:53:07 +02:00
Maschell
06184da8d3 Only throw an exception in the FSTService when a content for a given wasn't found if the Map is emtpy 2019-04-24 13:26:25 +02:00
Maschell
4aa6f532f0 Organize imports 2019-04-19 10:56:43 +02:00
Maschell
c47c9913ac Change the content and parent attribute of a FSTEntry to an Optional 2019-04-19 10:42:33 +02:00
Maschell
a9fc37244a Only throw an exception when no content was found for files that are actually in the title (and not a directory) 2019-04-18 23:27:39 +02:00
Maschell
f8146ce56b Make SHA2 attribute of ContentInfo Optional 2019-04-18 23:25:20 +02:00
Maschell
151ad6e2a6 Add support for titles without FST. 2019-04-14 14:50:01 +02:00
Maschell
cbfe6539a5 Check if the TMD is from a WiiU by checking the titleID 2019-04-11 17:56:59 +02:00
Maschell
88c0bb8a9e Add/Update copyright information. Minor cleanup, moved some interfaces 2019-04-10 20:13:38 +02:00
Maschell
422c36dde3 Throw a ParseException instead of returning null in the ContentInfo 2019-04-10 18:47:57 +02:00
Maschell
651e32e7ba - The NUSTitleLoaders now don't inherit anymore from a class, but use a static function from NUSTitleLoader. The NUSDataProvider is supplier by a Supplier argument. This simplifies the config.
- Remove the global common key. Now the common key needs to be provided to every loading instance. This way loading with different common keys is much easier (and more robust)
2019-04-10 18:47:22 +02:00
Maschell
536c28a3b1 Throw a ParseException on error in the ContentFSTInfo 2019-04-10 18:08:56 +02:00
Maschell
cf6b52780c Throw a ParseException on error in the FST and FSTService 2019-04-10 18:08:04 +02:00
Maschell
d1fb43bf65 Throw a ParseException on error in the Content. 2019-04-10 18:06:56 +02:00
Maschell
9ecd9825b5 Throw a ParseException on error in the TMD. 2019-04-10 18:05:14 +02:00
Maschell
6dbd94c9a0 [FSTEntry] Parse name only when needed. 2019-02-28 21:01:21 +01:00
Maschell
015e3fff18 [FSTEntry] Build path from parents instead of caching it. 2019-02-28 21:00:08 +01:00
Maschell
fa3b0df7d2 Fix some paths for *nix users. 2018-12-16 13:19:26 +01:00
Maschell
b6c6ae7320 Improved logging 2018-12-06 17:40:11 +01:00
Maschell
ed488d3904 Organize import, formatting. 2018-12-06 17:37:32 +01:00
Maschell
e8236e86d2 Fixed file offset calculation. 2018-12-06 15:59:34 +01:00
Maschell
82a3d5253c Added Comparable interface to Content entitiy 2018-12-06 15:58:15 +01:00
Maschell
4424be0722 Added unused code 2018-12-06 15:57:58 +01:00
Maschell
9d255e0291 Fixing the TMD class (adding missing imports), minor formatting. 2018-12-06 15:35:11 +01:00
Maschell
70db0b7fd9 Added the option to print the infos about a TMD to any PrintStream 2018-12-06 15:34:40 +01:00
Maschell
4c121ed959 Added a really basic toString function to the TMD class 2018-12-06 15:34:12 +01:00
Maschell
b016295e9f Return a RunTimeException if the input for the TMD was not valid. 2018-12-06 15:33:48 +01:00
Maschell
7b27478160 Fixed minor formatting. 2018-12-06 15:32:40 +01:00
Maschell
eaef0fefd1 Added license information, some code formatting 2018-03-10 12:22:10 +01:00
Maschell
0dc62ef4c0 Added cert downloading for remote titles 2017-07-28 16:53:52 +02:00
Maschell
14c987456d Code clean up, changed to a maven project 2017-05-17 19:20:42 +02:00