2323 */
2424public class SignatureParameters {
2525
26+ private static final String ALG = "alg" ;
27+ private static final String CREATED = "created" ;
28+ private static final String EXPIRES = "expires" ;
29+ private static final String KEYID = "keyid" ;
30+ private static final String NONCE = "nonce" ;
31+ private static final String TAG = "tag" ;
32+
2633 private List <StringItem > componentIdentifiers = new ArrayList <>();
2734
2835 // this preserves insertion order
@@ -62,74 +69,83 @@ public SignatureParameters setParameters(Map<String, Object> parameters) {
6269 * @return the alg
6370 */
6471 public HttpSigAlgorithm getAlg () {
65- return (HttpSigAlgorithm ) getParameters ().get ("alg" );
72+ return (HttpSigAlgorithm ) getParameters ().get (ALG );
6673 }
6774
6875 /**
6976 * @param alg the alg to set
7077 */
7178 public SignatureParameters setAlg (HttpSigAlgorithm alg ) {
72- getParameters ().put ("alg" , alg );
79+ getParameters ().put (ALG , alg );
7380 return this ;
7481 }
7582
7683 /**
7784 * @return the created
7885 */
7986 public Instant getCreated () {
80- return (Instant ) getParameters ().get ("created" );
87+ return (Instant ) getParameters ().get (CREATED );
8188 }
8289
8390 /**
8491 * @param created the created to set
8592 */
8693 public SignatureParameters setCreated (Instant created ) {
87- getParameters ().put ("created" , created );
94+ getParameters ().put (CREATED , created );
8895 return this ;
8996 }
9097
9198 /**
9299 * @return the expires
93100 */
94101 public Instant getExpires () {
95- return (Instant ) getParameters ().get ("expires" );
102+ return (Instant ) getParameters ().get (EXPIRES );
96103 }
97104
98105 /**
99106 * @param expires the expires to set
100107 */
101108 public SignatureParameters setExpires (Instant expires ) {
102- getParameters ().put ("expires" , expires );
109+ getParameters ().put (EXPIRES , expires );
103110 return this ;
104111 }
105112
106113 /**
107114 * @return the keyid
108115 */
109116 public String getKeyid () {
110- return (String ) getParameters ().get ("keyid" );
117+ return (String ) getParameters ().get (KEYID );
111118 }
112119
113120 /**
114121 * @param keyid the keyid to set
115122 */
116123 public SignatureParameters setKeyid (String keyid ) {
117- getParameters ().put ("keyid" , keyid );
124+ getParameters ().put (KEYID , keyid );
118125 return this ;
119126 }
120127
121128 /**
122129 * @return the nonce
123130 */
124131 public String getNonce () {
125- return (String ) getParameters ().get ("nonce" );
132+ return (String ) getParameters ().get (NONCE );
126133 }
127134
128135 /**
129136 * @param nonce the nonce to set
130137 */
131138 public SignatureParameters setNonce (String nonce ) {
132- getParameters ().put ("nonce" , nonce );
139+ getParameters ().put (NONCE , nonce );
140+ return this ;
141+ }
142+
143+ public String getTag () {
144+ return (String ) getParameters ().get (TAG );
145+ }
146+
147+ public SignatureParameters setTag (String tag ) {
148+ getParameters ().put (TAG , tag );
133149 return this ;
134150 }
135151
@@ -150,19 +166,19 @@ public InnerList toComponentValue() {
150166
151167 // preserve order
152168 for (String paramName : getParameters ().keySet ()) {
153- if (paramName .equals ("alg" )) {
169+ if (paramName .equals (ALG )) {
154170 HttpSigAlgorithm alg = getAlg ();
155171 if (alg .getExplicitAlg () != null ) {
156- params .put ("alg" , alg .getExplicitAlg ());
172+ params .put (ALG , alg .getExplicitAlg ());
157173 }
158- } else if (paramName .equals ("created" )) {
159- params .put ("created" , getCreated ().getEpochSecond ());
160- } else if (paramName .equals ("expires" )) {
161- params .put ("expires" , getExpires ().getEpochSecond ());
162- } else if (paramName .equals ("keyid" )) {
163- params .put ("keyid" , getKeyid ());
164- } else if (paramName .equals ("nonce" )) {
165- params .put ("nonce" , getNonce ());
174+ } else if (paramName .equals (CREATED )) {
175+ params .put (CREATED , getCreated ().getEpochSecond ());
176+ } else if (paramName .equals (EXPIRES )) {
177+ params .put (EXPIRES , getExpires ().getEpochSecond ());
178+ } else if (paramName .equals (KEYID )) {
179+ params .put (KEYID , getKeyid ());
180+ } else if (paramName .equals (NONCE )) {
181+ params .put (NONCE , getNonce ());
166182 } else {
167183 params .put (paramName , getParameters ().get (paramName ));
168184 }
@@ -230,18 +246,20 @@ public static SignatureParameters fromDictionaryEntry(Dictionary signatureInput,
230246 .collect (Collectors .toList ()));
231247
232248 for (String key : coveredComponents .getParams ().keySet ()) {
233- if (key .equals ("alg" )) {
234- params .setAlg (HttpSigAlgorithm .of (((StringItem )coveredComponents .getParams ().get ("alg" )).get ()));
235- } else if (key .equals ("created" )) {
249+ if (key .equals (ALG )) {
250+ params .setAlg (HttpSigAlgorithm .of (((StringItem )coveredComponents .getParams ().get (ALG )).get ()));
251+ } else if (key .equals (CREATED )) {
236252 params .setCreated (
237- Instant .ofEpochSecond (((NumberItem <?>)coveredComponents .getParams ().get ("created" )).getAsLong ()));
238- } else if (key .equals ("expires" )) {
253+ Instant .ofEpochSecond (((NumberItem <?>)coveredComponents .getParams ().get (CREATED )).getAsLong ()));
254+ } else if (key .equals (EXPIRES )) {
239255 params .setCreated (
240- Instant .ofEpochSecond (((NumberItem <?>)coveredComponents .getParams ().get ("expires" )).getAsLong ()));
241- } else if (key .equals ("keyid" )) {
242- params .setKeyid (((StringItem )coveredComponents .getParams ().get ("keyid" )).get ());
243- } else if (key .equals ("nonce" )) {
244- params .setNonce (((StringItem )coveredComponents .getParams ().get ("nonce" )).get ());
256+ Instant .ofEpochSecond (((NumberItem <?>)coveredComponents .getParams ().get (EXPIRES )).getAsLong ()));
257+ } else if (key .equals (KEYID )) {
258+ params .setKeyid (((StringItem )coveredComponents .getParams ().get (KEYID )).get ());
259+ } else if (key .equals (NONCE )) {
260+ params .setNonce (((StringItem )coveredComponents .getParams ().get (NONCE )).get ());
261+ } else if (key .equals (TAG )) {
262+ params .setTag (((StringItem )coveredComponents .getParams ().get (TAG )).get ());
245263 } else {
246264 params .getParameters ().put (key , coveredComponents .getParams ().get (key ).serialize ()); // store the serialized version
247265 }
0 commit comments