RequestUpdater.java
14.5 KB
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
/*
* Decompiled with CFR 0_118.
*
* Could not load the following classes:
* com.scene7.is.catalog.util.IPAddress
* com.scene7.is.provider.CacheSpec
* com.scene7.is.provider.DebugInfoEnum
* com.scene7.is.provider.FitSpec
* com.scene7.is.provider.FmtSpec
* com.scene7.is.provider.IccProfileSpec
* com.scene7.is.provider.ImageSet
* com.scene7.is.provider.JpegQualitySpec
* com.scene7.is.provider.ModifierList
* com.scene7.is.provider.OpacitySpec
* com.scene7.is.provider.PSModifierEnum
* com.scene7.is.provider.RequestTypeSpec
* com.scene7.is.sleng.BlendModeEnum
* com.scene7.is.sleng.Color
* com.scene7.is.sleng.DigimarcId
* com.scene7.is.sleng.DigimarcInfo
* com.scene7.is.sleng.HotSpot
* com.scene7.is.sleng.NamedPaths
* com.scene7.is.sleng.PScanSpec
* com.scene7.is.sleng.PathAttrSpec
* com.scene7.is.sleng.PerspectiveSpec
* com.scene7.is.sleng.QuantizeSpec
* com.scene7.is.sleng.ResModeSpec
* com.scene7.is.sleng.ScaleModeSpec
* com.scene7.is.sleng.Text
* com.scene7.is.sleng.TextAttrSpec
* com.scene7.is.util.Dimension2D
* com.scene7.is.util.Dimension2D$Double
* com.scene7.is.util.Location
* com.scene7.is.util.NullablePair
* com.scene7.is.util.collections.CollectionUtil
* com.scene7.is.util.collections.MapEntry
* org.jetbrains.annotations.NotNull
* org.jetbrains.annotations.Nullable
*/
package com.scene7.is.ps.provider;
import com.scene7.is.catalog.util.IPAddress;
import com.scene7.is.provider.CacheSpec;
import com.scene7.is.provider.DebugInfoEnum;
import com.scene7.is.provider.FitSpec;
import com.scene7.is.provider.FmtSpec;
import com.scene7.is.provider.IccProfileSpec;
import com.scene7.is.provider.ImageSet;
import com.scene7.is.provider.JpegQualitySpec;
import com.scene7.is.provider.ModifierList;
import com.scene7.is.provider.OpacitySpec;
import com.scene7.is.provider.PSModifierEnum;
import com.scene7.is.provider.RequestTypeSpec;
import com.scene7.is.ps.provider.LayerSource;
import com.scene7.is.ps.provider.ModifierSet;
import com.scene7.is.ps.provider.Request;
import com.scene7.is.ps.provider.UnsharpMaskSpec;
import com.scene7.is.ps.provider.defs.AlphaUseEnum;
import com.scene7.is.ps.provider.defs.ClientTypeEnum;
import com.scene7.is.ps.provider.defs.ColorizeSpec;
import com.scene7.is.ps.provider.defs.FlipEnum;
import com.scene7.is.ps.provider.defs.IZColor;
import com.scene7.is.ps.provider.defs.ModifierEnum;
import com.scene7.is.ps.provider.defs.NoiseSpec;
import com.scene7.is.ps.provider.defs.TileRect;
import com.scene7.is.sleng.BlendModeEnum;
import com.scene7.is.sleng.Color;
import com.scene7.is.sleng.DigimarcId;
import com.scene7.is.sleng.DigimarcInfo;
import com.scene7.is.sleng.HotSpot;
import com.scene7.is.sleng.NamedPaths;
import com.scene7.is.sleng.PScanSpec;
import com.scene7.is.sleng.PathAttrSpec;
import com.scene7.is.sleng.PerspectiveSpec;
import com.scene7.is.sleng.QuantizeSpec;
import com.scene7.is.sleng.ResModeSpec;
import com.scene7.is.sleng.ScaleModeSpec;
import com.scene7.is.sleng.Text;
import com.scene7.is.sleng.TextAttrSpec;
import com.scene7.is.util.Dimension2D;
import com.scene7.is.util.Location;
import com.scene7.is.util.NullablePair;
import com.scene7.is.util.collections.CollectionUtil;
import com.scene7.is.util.collections.MapEntry;
import java.awt.Rectangle;
import java.awt.geom.Point2D;
import java.awt.geom.Rectangle2D;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class RequestUpdater {
private static final Map<PSModifierEnum, ModifierUpdater> MODIFIER_MAP = Collections.unmodifiableMap(CollectionUtil.mapOf((MapEntry[])new MapEntry[]{RequestUpdater.mapEntry(PSModifierEnum.EXT, new NullUpdater()), RequestUpdater.mapEntry(PSModifierEnum.NANOS, new NullUpdater()), RequestUpdater.mapEntry(PSModifierEnum.DEBUG_INFO, new DefaultUpdater(ModifierEnum.DEBUG_INFO)), RequestUpdater.mapEntry(PSModifierEnum.DISABLERULES, new DefaultUpdater(ModifierEnum.DISABLERULES)), RequestUpdater.mapEntry(PSModifierEnum.CACHE, new DefaultUpdater(ModifierEnum.CACHE)), RequestUpdater.mapEntry(PSModifierEnum.PRINTRES, new DefaultUpdater(ModifierEnum.URL_PRINT_RES)), RequestUpdater.mapEntry(PSModifierEnum.CLI, new DefaultUpdater(ModifierEnum.CLI)), RequestUpdater.mapEntry(PSModifierEnum.REQ, new DefaultUpdater(ModifierEnum.REQ)), RequestUpdater.mapEntry(PSModifierEnum.LAYER, new DefaultUpdater(ModifierEnum.LAYER)), RequestUpdater.mapEntry(PSModifierEnum.EFFECT, new DefaultUpdater(ModifierEnum.EFFECT)), RequestUpdater.mapEntry(PSModifierEnum.NAME, new DefaultUpdater(ModifierEnum.NAME)), RequestUpdater.mapEntry(PSModifierEnum.MAP, new DefaultUpdater(ModifierEnum.URL_MAP)), RequestUpdater.mapEntry(PSModifierEnum.MAPA, new DefaultUpdater(ModifierEnum.I_HOT_SPOTS)), RequestUpdater.mapEntry(PSModifierEnum.TIMEOUT, new DefaultUpdater(ModifierEnum.TIMEOUT)), RequestUpdater.mapEntry(PSModifierEnum.MESSAGE, new DefaultUpdater(ModifierEnum.MESSAGE)), RequestUpdater.mapEntry(PSModifierEnum.ALIGN, new DefaultUpdater(ModifierEnum.ALIGN)), RequestUpdater.mapEntry(PSModifierEnum.BGC, new DefaultUpdater(ModifierEnum.BGC)), RequestUpdater.mapEntry(PSModifierEnum.FIT, new DefaultUpdater(ModifierEnum.FIT)), RequestUpdater.mapEntry(PSModifierEnum.FMT, new DefaultUpdater(ModifierEnum.FMT)), RequestUpdater.mapEntry(PSModifierEnum.LOCALE, new DefaultUpdater(ModifierEnum.LOCALE)), RequestUpdater.mapEntry(PSModifierEnum.HEI, new DefaultUpdater(ModifierEnum.HEI)), RequestUpdater.mapEntry(PSModifierEnum.ID, new DefaultUpdater(ModifierEnum.ID)), RequestUpdater.mapEntry(PSModifierEnum.HANDLER, new DefaultUpdater(ModifierEnum.HANDLER)), RequestUpdater.mapEntry(PSModifierEnum.OP_SHARPEN, new DefaultUpdater(ModifierEnum.OP_SHARPEN)), RequestUpdater.mapEntry(PSModifierEnum.QLT, new DefaultUpdater(ModifierEnum.QLT)), RequestUpdater.mapEntry(PSModifierEnum.JPEGSIZE, new DefaultUpdater(ModifierEnum.JPEGSIZE)), RequestUpdater.mapEntry(PSModifierEnum.RECT, new DefaultUpdater(ModifierEnum.RECT)), RequestUpdater.mapEntry(PSModifierEnum.RESMODE, new DefaultUpdater(ModifierEnum.RES_MODE)), RequestUpdater.mapEntry(PSModifierEnum.SCALEMODE, new DefaultUpdater(ModifierEnum.SCALE_MODE)), RequestUpdater.mapEntry(PSModifierEnum.RGN, new DefaultUpdater(ModifierEnum.RGN)), RequestUpdater.mapEntry(PSModifierEnum.SCL, new DefaultUpdater(ModifierEnum.SCL)), RequestUpdater.mapEntry(PSModifierEnum.WID, new DefaultUpdater(ModifierEnum.WID)), RequestUpdater.mapEntry(PSModifierEnum.VIEW, new DefaultUpdater(ModifierEnum.VIEW)), RequestUpdater.mapEntry(PSModifierEnum.ICC, new DefaultUpdater(ModifierEnum.ICC)), RequestUpdater.mapEntry(PSModifierEnum.ICCEMBED, new DefaultUpdater(ModifierEnum.ICC_EMBED)), RequestUpdater.mapEntry(PSModifierEnum.XMPEMBED, new DefaultUpdater(ModifierEnum.XMP_EMBED)), RequestUpdater.mapEntry(PSModifierEnum.PATHEMBED, new DefaultUpdater(ModifierEnum.PATH_EMBED)), RequestUpdater.mapEntry(PSModifierEnum.QUANTIZE, new DefaultUpdater(ModifierEnum.QUANTIZE)), RequestUpdater.mapEntry(PSModifierEnum.WATERMARK, new DefaultUpdater(ModifierEnum.WATERMARK)), RequestUpdater.mapEntry(PSModifierEnum.EFFECTMASK, new DefaultUpdater(ModifierEnum.EFFECTMASK)), RequestUpdater.mapEntry(PSModifierEnum.IPADDR, new DefaultUpdater(ModifierEnum.IPADDR)), RequestUpdater.mapEntry(PSModifierEnum.PSCAN, new DefaultUpdater(ModifierEnum.PSCAN)), RequestUpdater.mapEntry(PSModifierEnum.ANCHOR, new DefaultUpdater(ModifierEnum.ANCHOR)), RequestUpdater.mapEntry(PSModifierEnum.ANCHORN, new DefaultUpdater(ModifierEnum.ANCHORN)), RequestUpdater.mapEntry(PSModifierEnum.BLENDMODE, new DefaultUpdater(ModifierEnum.BLEND_MODE)), RequestUpdater.mapEntry(PSModifierEnum.MASKUSE, new DefaultUpdater(ModifierEnum.MASK_USE)), RequestUpdater.mapEntry(PSModifierEnum.OPAC, new DefaultUpdater(ModifierEnum.OPACITY)), RequestUpdater.mapEntry(PSModifierEnum.COLOR, new DefaultUpdater(ModifierEnum.COLOR)), RequestUpdater.mapEntry(PSModifierEnum.BGCOLOR, new DefaultUpdater(ModifierEnum.BG_COLOR)), RequestUpdater.mapEntry(PSModifierEnum.CROP, new DefaultUpdater(ModifierEnum.CROP)), RequestUpdater.mapEntry(PSModifierEnum.CROPN, new DefaultUpdater(ModifierEnum.CROPN)), RequestUpdater.mapEntry(PSModifierEnum.EXTEND, new DefaultUpdater(ModifierEnum.EXTEND)), RequestUpdater.mapEntry(PSModifierEnum.EXTENDN, new DefaultUpdater(ModifierEnum.EXTENDN)), RequestUpdater.mapEntry(PSModifierEnum.FLIP, new DefaultUpdater(ModifierEnum.FLIP)), RequestUpdater.mapEntry(PSModifierEnum.MASK, new DefaultUpdater(ModifierEnum.MASK)), RequestUpdater.mapEntry(PSModifierEnum.OP_BLUR, new DefaultUpdater(ModifierEnum.OP_BLUR)), RequestUpdater.mapEntry(PSModifierEnum.OP_NOISE, new DefaultUpdater(ModifierEnum.OP_NOISE)), RequestUpdater.mapEntry(PSModifierEnum.OP_GROW, new DefaultUpdater(ModifierEnum.OP_DILATE)), RequestUpdater.mapEntry(PSModifierEnum.OP_GROWMASK, new DefaultUpdater(ModifierEnum.OP_DILATE_MASK)), RequestUpdater.mapEntry(PSModifierEnum.OP_GROWMASKR, new DefaultUpdater(ModifierEnum.OP_DILATE_MASKR)), RequestUpdater.mapEntry(PSModifierEnum.OP_BRIGHTNESS, new DefaultUpdater(ModifierEnum.OP_BRIGHTNESS)), RequestUpdater.mapEntry(PSModifierEnum.OP_COLORBALANCE, new DefaultUpdater(ModifierEnum.OP_COLORBALANCE)), RequestUpdater.mapEntry(PSModifierEnum.OP_COLORIZE, new DefaultUpdater(ModifierEnum.OP_COLORIZE)), RequestUpdater.mapEntry(PSModifierEnum.OP_COLORIZE2, new DefaultUpdater(ModifierEnum.OP_COLORIZE2)), RequestUpdater.mapEntry(PSModifierEnum.OP_CONTRAST, new DefaultUpdater(ModifierEnum.OP_CONTRAST)), RequestUpdater.mapEntry(PSModifierEnum.OP_HUE, new DefaultUpdater(ModifierEnum.OP_HUE)), RequestUpdater.mapEntry(PSModifierEnum.OP_SATURATION, new DefaultUpdater(ModifierEnum.OP_SATURATION)), RequestUpdater.mapEntry(PSModifierEnum.OP_USM, new DefaultUpdater(ModifierEnum.OP_USM)), RequestUpdater.mapEntry(PSModifierEnum.OP_USMR, new DefaultUpdater(ModifierEnum.OP_USMR)), RequestUpdater.mapEntry(PSModifierEnum.OP_INVERT, new DefaultUpdater(ModifierEnum.OP_INVERT)), RequestUpdater.mapEntry(PSModifierEnum.ORIGIN, new DefaultUpdater(ModifierEnum.ORIGIN)), RequestUpdater.mapEntry(PSModifierEnum.ORIGINN, new DefaultUpdater(ModifierEnum.ORIGINN)), RequestUpdater.mapEntry(PSModifierEnum.POS, new DefaultUpdater(ModifierEnum.POS)), RequestUpdater.mapEntry(PSModifierEnum.POSN, new DefaultUpdater(ModifierEnum.POSN)), RequestUpdater.mapEntry(PSModifierEnum.RES, new DefaultUpdater(ModifierEnum.DST_RES)), RequestUpdater.mapEntry(PSModifierEnum.ROTATE, new DefaultUpdater(ModifierEnum.ROTATE)), RequestUpdater.mapEntry(PSModifierEnum.SCALE, new DefaultUpdater(ModifierEnum.SCALE)), RequestUpdater.mapEntry(PSModifierEnum.SIZE, new DefaultUpdater(ModifierEnum.SIZE)), RequestUpdater.mapEntry(PSModifierEnum.SIZEN, new DefaultUpdater(ModifierEnum.SIZEN)), RequestUpdater.mapEntry(PSModifierEnum.SRC, new DefaultUpdater(ModifierEnum.SRC)), RequestUpdater.mapEntry(PSModifierEnum.TEXT, new DefaultUpdater(ModifierEnum.TEXT)), RequestUpdater.mapEntry(PSModifierEnum.TEXTID, new DefaultUpdater(ModifierEnum.TEXT)), RequestUpdater.mapEntry(PSModifierEnum.TEXTPS, new DefaultUpdater(ModifierEnum.TEXT)), RequestUpdater.mapEntry(PSModifierEnum.TEXTANGLE, new DefaultUpdater(ModifierEnum.TEXTANGLE)), RequestUpdater.mapEntry(PSModifierEnum.TEXTATTR, new DefaultUpdater(ModifierEnum.TEXT_ATTR)), RequestUpdater.mapEntry(PSModifierEnum.PATHATTR, new DefaultUpdater(ModifierEnum.PATH_ATTR)), RequestUpdater.mapEntry(PSModifierEnum.TEXTFLOWPATH, new DefaultUpdater(ModifierEnum.TEXT_FLOW_PATH)), RequestUpdater.mapEntry(PSModifierEnum.TEXTFLOWXPATH, new DefaultUpdater(ModifierEnum.TEXT_FLOW_XPATH)), RequestUpdater.mapEntry(PSModifierEnum.TEXTPATH, new DefaultUpdater(ModifierEnum.TEXT_PATH)), RequestUpdater.mapEntry(PSModifierEnum.CLIPPATH, new DefaultUpdater(ModifierEnum.CLIP_PATH)), RequestUpdater.mapEntry(PSModifierEnum.CLIPXPATH, new DefaultUpdater(ModifierEnum.CLIP_XPATH)), RequestUpdater.mapEntry(PSModifierEnum.CLIPPATHE, new DefaultUpdater(ModifierEnum.CLIP_PATH_E)), RequestUpdater.mapEntry(PSModifierEnum.CLIPXPATHE, new DefaultUpdater(ModifierEnum.CLIP_XPATH_E)), RequestUpdater.mapEntry(PSModifierEnum.CROPPATHE, new DefaultUpdater(ModifierEnum.CROP_PATH_E)), RequestUpdater.mapEntry(PSModifierEnum.I_MACRO, new NullUpdater()), RequestUpdater.mapEntry(PSModifierEnum.DEFAULTIMAGE, new DefaultUpdater(ModifierEnum.DEFAULT_IMAGE)), RequestUpdater.mapEntry(PSModifierEnum.LABELKEY, new DefaultUpdater(ModifierEnum.LABELKEY)), RequestUpdater.mapEntry(PSModifierEnum.IMAGESET, new DefaultUpdater(ModifierEnum.IMAGESET)), RequestUpdater.mapEntry(PSModifierEnum.DIGIMARCID, new DefaultUpdater(ModifierEnum.DIGIMARC_ID)), RequestUpdater.mapEntry(PSModifierEnum.DIGIMARCINFO, new DefaultUpdater(ModifierEnum.DIGIMARC_INFO)), RequestUpdater.mapEntry(PSModifierEnum.HIDE, new DefaultUpdater(ModifierEnum.HIDE)), RequestUpdater.mapEntry(PSModifierEnum.PERSPECTIVE, new DefaultUpdater(ModifierEnum.PERSPECTIVE)), RequestUpdater.mapEntry(PSModifierEnum.PERSPECTIVEN, new DefaultUpdater(ModifierEnum.PERSPECTIVEN)), RequestUpdater.mapEntry(PSModifierEnum.TEMPLATE, new NullUpdater())}));
private static MapEntry<PSModifierEnum, ModifierUpdater> mapEntry(PSModifierEnum modifierEnum, ModifierUpdater updater) {
return MapEntry.mapEntry((Object)modifierEnum, (Object)updater);
}
public static void updateRequest(@NotNull Request request, @NotNull ModifierList<PSModifierEnum> modifiers) {
for (NullablePair entry2 : modifiers.getModifiers()) {
PSModifierEnum key = (PSModifierEnum)entry2.getKey();
ModifierUpdater updater = MODIFIER_MAP.get((Object)key);
Object value = entry2.getValue();
assert (updater != null);
updater.update(request, value);
}
for (Map.Entry entry : modifiers.getSubstPairs().entrySet()) {
String value = (String)entry.getValue();
String key = (String)entry.getKey();
request.setSubstPair(key, value);
}
}
private static class DefaultUpdater
implements ModifierUpdater {
private final ModifierEnum<Object> modifier;
private DefaultUpdater(ModifierEnum<?> modifier) {
this.modifier = modifier;
}
@Override
public void update(@NotNull Request request, @Nullable Object value) {
request.setModifier(this.modifier, value);
}
}
private static class NullUpdater
implements ModifierUpdater {
private NullUpdater() {
}
@Override
public void update(@NotNull Request request, @Nullable Object value) {
}
}
private static interface ModifierUpdater {
public void update(@NotNull Request var1, @Nullable Object var2);
}
}