1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102 | package Torello.JavaDoc;
import Torello.Java.ReadOnly.ReadOnlyMap;
import Torello.JDUInternal.Features.STATS.StatsInternal;
import Torello.JDUInternal.MainJDU.ClassUpgradeData.UpgradeSettings;
import Torello.JavaDoc.Messager.Messager;
import java.io.File;
import java.util.Objects;
class GlobalEmbedTags
{
static Torello.JDUInternal.Features.STATS.StatsInternal globalMapAndStats
(final UpgradeSettings.Builder settingsBuilder)
{
final boolean mapB = settingsBuilder.interimGlobalTagIDMap != null;
final boolean fileB = settingsBuilder.interimGlobalTagIDMapFileName != null;
if (mapB && fileB) throw new UpgradeException(
"Both Configuration-Method:\n" +
"Upgrade.setProjectGlobalEmbedTagsMap​(ReadOnlyMap<String,​String> tagIDMap)\n" +
"and Configuration-Method:\n" +
"Upgrade.setProjectGlobalEmbedTagsMapFile​(String tagIDMapFileName)\n" +
"have been invoked - but one of them may be assigned a value, or this exception " +
"throws."
);
if (mapB) return setMap(settingsBuilder);
else if (fileB) return setMapFile(settingsBuilder);
else return new StatsInternal();
}
private static Torello.JDUInternal.Features.STATS.StatsInternal setMapFile
(final UpgradeSettings.Builder settingsBuilder)
{
final String tagIDMapFileName = settingsBuilder.interimGlobalTagIDMapFileName;
if (tagIDMapFileName == null) throw new UpgradeException
("The parameter 'tagIDMapFileName' (as a String) was passed NULL.");
final File tagIDMapFile = new File(tagIDMapFileName);
if (! tagIDMapFile.exists()) throw new UpgradeException
("The <EMBED> Tag ID Map File Provided doesn't exist:\n[" + tagIDMapFileName + "]");
if (! tagIDMapFile.isFile()) throw new UpgradeException
("The <EMBED> Tag ID Map File Provided isn't a file:\n[" + tagIDMapFileName + "]");
settingsBuilder.projectGlobalEmbedTagsMap =
Torello.JDUInternal.Features.EXTERNAL_HTML_FILES.ReadUserConfig.API_LoadUserTags
.read(tagIDMapFile, settingsBuilder.checkBalance, "");
// Register this with the 'Stats' class. This keeps a count of the use of each of these
// tags in Java Doc Pages, and outputs a 'Stats.html' file at the end.
//
// this.stats = new StatsInternal(settingsBuilder.projectGlobalEmbedTagsMap);
return new Torello.JDUInternal.Features.STATS.StatsInternal
(settingsBuilder.projectGlobalEmbedTagsMap);
}
private static Torello.JDUInternal.Features.STATS.StatsInternal setMap
(final UpgradeSettings.Builder settingsBuilder)
{
final ReadOnlyMap<String, String> tagIDMap = settingsBuilder.projectGlobalEmbedTagsMap;
Objects.requireNonNull(
tagIDMap,
"The parameter 'tagIDMap' (a ReadOnlyMap<String, String>) was passed NULL."
);
// This needs to be set "outside" of the class "API_CheckTagMap" - because of this whole
// entire issue. "User Provided Map Instance", "Instance, Not File"
Messager.setCurrentFileName("User Provided Map Instance", "Instance, Not File");
// This map is the "Project-Global" Tag-Map
final boolean res =
Torello.JDUInternal.Features.EXTERNAL_HTML_FILES.ReadUserConfig.API_LoadUserTags
.checkMap(tagIDMap, settingsBuilder.checkBalance, "");
if (! res) throw new UpgradeException(
"There were errors when checking the HTML Validity of the External-HTML Global " +
"EMBED TAG FILES."
);
// Copy the Embed-Tag Map, (ID ==> FileName Map) into 'this' (internally-stored) map.
settingsBuilder.projectGlobalEmbedTagsMap = tagIDMap;
// Register this with the 'Stats' class. This keeps a count of the use of each of these
// tags in Java Doc Pages, and outputs a 'Stats.html' file at the end.
//
// this.stats = new StatsInternal(this.settingsBuilder.projectGlobalEmbedTagsMap);
return new Torello.JDUInternal.Features.STATS.StatsInternal
(settingsBuilder.projectGlobalEmbedTagsMap);
}
}
|