001package Torello.Java.JSON; 002 003import Torello.JavaDoc.LinkJavaSource; 004import Torello.JavaDoc.StaticFunctional; 005import Torello.JavaDoc.JDHeaderBackgroundImg; 006 007import Torello.JavaDoc.IntoHTMLTable; 008import static Torello.JavaDoc.IntoHTMLTable.Background.GreenDither; 009import static Torello.JavaDoc.IntoHTMLTable.Background.BlueDither; 010 011import javax.json.Json; 012import javax.json.JsonArray; 013import javax.json.JsonString; 014import javax.json.JsonValue; 015 016import java.util.Objects; 017 018import Torello.Java.Function.IntIntTConsumer; 019import java.util.function.Consumer; 020import java.util.function.Function; 021 022import Torello.Java.JSON.JFlag; 023 024import static Torello.Java.JSON.BASIC_TYPES.BOXED; 025 026import static javax.json.JsonValue.TRUE; 027import static javax.json.JsonValue.FALSE; 028 029/** 030 * Generate a Pre-Configured {@link SettingsRec} instance which can handle Java Boxed-Primitives. 031 * 032 * <EMBED CLASS=globalDefs DATA-A_AN=A> 033 * <EMBED CLASS='external-html' DATA-FILE-ID=GLASS_FISH_NOTE> 034 * <EMBED CLASS='external-html' DATA-FILE-ID=RJA_BOXED_CONS_REC> 035 * <EMBED CLASS='external-html' DATA-FILE-ID=LOOP_OPTIMIZED_NOTE> 036 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_PT_BOXED_CONS_REC> 037 * 038 * @see Json 039 * @see JsonArray 040 */ 041@StaticFunctional 042@JDHeaderBackgroundImg(EmbedTagFileID="RJA_JDHBI_BOXED_CONS_REC") 043public class RJArrBoxedConsumerRec 044{ 045 private RJArrBoxedConsumerRec() { } 046 047 /** 048 * <EMBED CLASS=defs DATA-A_AN=An DATA-DEFVAL=0 DATA-TYPE=Integer DATA-TYPE_LC=int 049 * DATA-METH_NAME=numeric> 050 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 051 */ 052 @IntoHTMLTable( 053 background=GreenDither, 054 title="Create a SettingsRec Instance for a Boxed-Integer Consumer" 055 ) 056 @LinkJavaSource(handle="BASIC_TYPES", name="INTEGER") 057 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 058 public static SettingsRec<Integer, Void> intRec( 059 final int defaultValue, 060 final int FLAGS, 061 final Function<String, Integer> optionalUserParser 062 ) 063 { 064 return SETTINGS_REC_BUILDER.createForConsumers 065 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_INTEGER()); 066 } 067 068 /** 069 * <EMBED CLASS=defs DATA-DEFVAL=0 DATA-TYPE=Short DATA-TYPE_LC=short DATA-METH_NAME=numeric> 070 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 071 */ 072 @IntoHTMLTable( 073 background=BlueDither, 074 title="Create a SettingsRec Instance for a Boxed Short-Integer Consumer" 075 ) 076 @LinkJavaSource(handle="BASIC_TYPES", name="SHORT") 077 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 078 public static SettingsRec<Short, Void> shortRec( 079 final short defaultValue, 080 final int FLAGS, 081 final Function<String, Short> optionalUserParser 082 ) 083 { 084 return SETTINGS_REC_BUILDER.createForConsumers 085 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_SHORT()); 086 } 087 088 /** 089 * <EMBED CLASS=defs DATA-DEFVAL=0 DATA-TYPE=Byte DATA-TYPE_LC=byte DATA-METH_NAME=numeric> 090 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 091 */ 092 @IntoHTMLTable( 093 background=GreenDither, 094 title="Create a SettingsRec Instance for a Boxed-Byte Consumer" 095 ) 096 @LinkJavaSource(handle="BASIC_TYPES", name="BYTE") 097 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 098 public static SettingsRec<Byte, Void> byteRec( 099 final byte defaultValue, 100 final int FLAGS, 101 final Function<String, Byte> optionalUserParser 102 ) 103 { 104 return SETTINGS_REC_BUILDER.createForConsumers 105 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_BYTE()); 106 } 107 108 /** 109 * <EMBED CLASS=defs DATA-DEFVAL=0 DATA-TYPE=Long DATA-TYPE_LC=long DATA-METH_NAME=numeric> 110 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 111 */ 112 @IntoHTMLTable( 113 background=BlueDither, 114 title="Create a SettingsRec Instance for a Boxed Long-Integer Consumer" 115 ) 116 @LinkJavaSource(handle="BASIC_TYPES", name="LONG") 117 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 118 public static SettingsRec<Long, Void> longRec( 119 final long defaultValue, 120 final int FLAGS, 121 final Function<String, Long> optionalUserParser 122 ) 123 { 124 return SETTINGS_REC_BUILDER.createForConsumers 125 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_LONG()); 126 } 127 128 /** 129 * <EMBED CLASS=defs DATA-DEFVAL="0.0" DATA-TYPE=Double DATA-TYPE_LC=double 130 * DATA-METH_NAME=numeric> 131 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 132 */ 133 @IntoHTMLTable( 134 background=GreenDither, 135 title="Create a SettingsRec Instance for a Boxed-Double Consumer" 136 ) 137 @LinkJavaSource(handle="BASIC_TYPES", name="DOUBLE") 138 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 139 public static SettingsRec<Double, Void> doubleRec( 140 final double defaultValue, 141 final int FLAGS, 142 final Function<String, Double> optionalUserParser 143 ) 144 { 145 return SETTINGS_REC_BUILDER.createForConsumers 146 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_DOUBLE()); 147 } 148 149 /** 150 * <EMBED CLASS=defs DATA-DEFVAL="0.0f" DATA-TYPE=Float DATA-TYPE_LC=float 151 * DATA-METH_NAME=numeric> 152 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 153 */ 154 @IntoHTMLTable( 155 background=BlueDither, 156 title="Create a SettingsRec Instance for a Boxed-Float Consumer" 157 ) 158 @LinkJavaSource(handle="BASIC_TYPES", name="FLOAT") 159 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 160 public static SettingsRec<Float, Void> floatRec( 161 final float defaultValue, 162 final int FLAGS, 163 final Function<String, Float> optionalUserParser 164 ) 165 { 166 return SETTINGS_REC_BUILDER.createForConsumers 167 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_FLOAT()); 168 } 169 170 /** 171 * <EMBED CLASS=defs DATA-DEFVAL=false DATA-TYPE=Boolean DATA-TYPE_LC=boolean 172 * DATA-METH_NAME=boolean> 173 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 174 */ 175 @IntoHTMLTable( 176 background=GreenDither, 177 title="Create a SettingsRec Instance for a Boxed-Boolean Consumer" 178 ) 179 @LinkJavaSource(handle="BASIC_TYPES", name="BOOLEAN") 180 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 181 public static SettingsRec<Boolean, Void> booleanRec( 182 final boolean defaultValue, 183 final int FLAGS, 184 final Function<String, Boolean> optionalUserParser 185 ) 186 { 187 return SETTINGS_REC_BUILDER.createForConsumers 188 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_BOOLEAN()); 189 } 190 191 /** 192 * <EMBED CLASS=defs DATA-DEFVAL=0 DATA-TYPE=Number DATA-TYPE_LC=int DATA-METH_NAME=numeric> 193 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC1> 194 */ 195 @IntoHTMLTable( 196 background=BlueDither, 197 title="Create a SettingsRec Instance for a (Best Filt) Boxed-Number Consumer" 198 ) 199 @LinkJavaSource(handle="BASIC_TYPES", name="NUMBER_REC") 200 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForConsumers", paramCount=4) 201 public static SettingsRec<Number, Void> numberRec( 202 final Number defaultValue, 203 final int FLAGS, 204 final Function<String, Number> optionalUserParser 205 ) 206 { 207 return SETTINGS_REC_BUILDER.createForConsumers 208 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.NUMBER_REC()); 209 } 210 211 212 213 214 // ******************************************************************************************** 215 // ******************************************************************************************** 216 // IntIntTConsumer Variant 217 // ******************************************************************************************** 218 // ******************************************************************************************** 219 220 221 222 223 /** 224 * <EMBED CLASS=defs DATA-A_AN=An DATA-DEFVAL=1 DATA-TYPE=Integer DATA-TYPE_LC=int 225 * DATA-METH_NAME=numeric> 226 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 227 */ 228 @IntoHTMLTable( 229 background=GreenDither, 230 title="Create a SettingsRec Instance for a Consumer of Boxed-Integers, w/ Array-Indices" 231 ) 232 @LinkJavaSource(handle="BASIC_TYPES", name="INTEGER") 233 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 234 public static SettingsRec<Integer, Void> intRec2( 235 final int defaultValue, 236 final int FLAGS, 237 final Function<String, Integer> optionalUserParser 238 ) 239 { 240 return SETTINGS_REC_BUILDER.createForIIConsumers 241 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_INTEGER()); 242 } 243 244 /** 245 * <EMBED CLASS=defs DATA-DEFVAL=1 DATA-TYPE=Short DATA-TYPE_LC=short DATA-METH_NAME=numeric> 246 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 247 */ 248 @IntoHTMLTable( 249 background=BlueDither, 250 title="Create a SettingsRec Instance for a Consumer of Boxed Short-Integers, " + 251 "w/ Array-Indices" 252 ) 253 @LinkJavaSource(handle="BASIC_TYPES", name="SHORT") 254 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 255 public static SettingsRec<Short, Void> shortRec2( 256 final short defaultValue, 257 final int FLAGS, 258 final Function<String, Short> optionalUserParser 259 ) 260 { 261 return SETTINGS_REC_BUILDER.createForIIConsumers 262 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_SHORT()); 263 } 264 265 /** 266 * <EMBED CLASS=defs DATA-DEFVAL=1 DATA-TYPE=Byte DATA-TYPE_LC=byte DATA-METH_NAME=numeric> 267 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 268 */ 269 @IntoHTMLTable( 270 background=GreenDither, 271 title="Create a SettingsRec Instance for a Consumer of Boxed-Bytes, w/ Array-Indices" 272 ) 273 @LinkJavaSource(handle="BASIC_TYPES", name="BYTE") 274 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 275 public static SettingsRec<Byte, Void> byteRec2( 276 final byte defaultValue, 277 final int FLAGS, 278 final Function<String, Byte> optionalUserParser 279 ) 280 { 281 return SETTINGS_REC_BUILDER.createForIIConsumers 282 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_BYTE()); 283 } 284 285 /** 286 * <EMBED CLASS=defs DATA-DEFVAL=1 DATA-TYPE=Long DATA-TYPE_LC=long DATA-METH_NAME=numeric> 287 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 288 */ 289 @IntoHTMLTable( 290 background=BlueDither, 291 title="Create a SettingsRec Instance for a Consumer of Boxed Long-Integers, " + 292 "w/ Array-Indices" 293 ) 294 @LinkJavaSource(handle="BASIC_TYPES", name="LONG") 295 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 296 public static SettingsRec<Long, Void> longRec2( 297 final long defaultValue, 298 final int FLAGS, 299 final Function<String, Long> optionalUserParser 300 ) 301 { 302 return SETTINGS_REC_BUILDER.createForIIConsumers 303 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_LONG()); 304 } 305 306 /** 307 * <EMBED CLASS=defs DATA-DEFVAL="1.0" DATA-TYPE=Double DATA-TYPE_LC=double 308 * DATA-METH_NAME=numeric> 309 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 310 */ 311 @IntoHTMLTable( 312 background=GreenDither, 313 title="Create a SettingsRec Instance for a Consumer of Boxed-Doubles, w/ Array-Indices" 314 ) 315 @LinkJavaSource(handle="BASIC_TYPES", name="DOUBLE") 316 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 317 public static SettingsRec<Double, Void> doubleRec2( 318 final double defaultValue, 319 final int FLAGS, 320 final Function<String, Double> optionalUserParser 321 ) 322 { 323 return SETTINGS_REC_BUILDER.createForIIConsumers 324 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_DOUBLE()); 325 } 326 327 /** 328 * <EMBED CLASS=defs DATA-DEFVAL="1.0f" DATA-TYPE=Float DATA-TYPE_LC=float 329 * DATA-METH_NAME=numeric> 330 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 331 */ 332 @IntoHTMLTable( 333 background=BlueDither, 334 title="Create a SettingsRec Instance for a Consumer of Boxed-Floats, w/ Array-Indices" 335 ) 336 @LinkJavaSource(handle="BASIC_TYPES", name="FLOAT") 337 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 338 public static SettingsRec<Float, Void> floatRec2( 339 final float defaultValue, 340 final int FLAGS, 341 final Function<String, Float> optionalUserParser 342 ) 343 { 344 return SETTINGS_REC_BUILDER.createForIIConsumers 345 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_FLOAT()); 346 } 347 348 /** 349 * <EMBED CLASS=defs DATA-DEFVAL=false DATA-TYPE=Boolean DATA-TYPE_LC=boolean 350 * DATA-METH_NAME=boolean> 351 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 352 */ 353 @IntoHTMLTable( 354 background=GreenDither, 355 title="Create a SettingsRec Instance for a Consumer of Boxed-Booleans, w/ Array-Indices" 356 ) 357 @LinkJavaSource(handle="BASIC_TYPES", name="BOOLEAN") 358 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 359 public static SettingsRec<Boolean, Void> booleanRec2( 360 final boolean defaultValue, 361 final int FLAGS, 362 final Function<String, Boolean> optionalUserParser 363 ) 364 { 365 return SETTINGS_REC_BUILDER.createForIIConsumers 366 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.BOXED_BOOLEAN()); 367 } 368 369 /** 370 * <EMBED CLASS=defs DATA-DEFVAL=1 DATA-TYPE=Number DATA-TYPE_LC=number DATA-METH_NAME=numeric> 371 * <EMBED CLASS='external-html' DATA-FILE-ID=RJ_ARR_BOXED_CONS_REC2> 372 */ 373 @IntoHTMLTable( 374 background=BlueDither, 375 title="Create a SettingsRec Instance for a Consumer of (Best-Fit) Boxed-Numbers, " + 376 "w/ Array-Indices" 377 ) 378 @LinkJavaSource(handle="BASIC_TYPES", name="NUMBER_REC") 379 @LinkJavaSource(handle="SETTINGS_REC_BUILDER", name="createForIIConsumers", paramCount=4) 380 public static SettingsRec<Number, Void> numberRec2( 381 final Number defaultValue, 382 final int FLAGS, 383 final Function<String, Number> optionalUserParser 384 ) 385 { 386 return SETTINGS_REC_BUILDER.createForIIConsumers 387 (defaultValue, FLAGS, optionalUserParser, BASIC_TYPES.NUMBER_REC()); 388 } 389 390}