- Timestamp:
- 06/26/13 13:27:31 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
java/main/src/main/java/com/framsticks/params/ParamBuilder.java
r85 r86 1 1 package com.framsticks.params; 2 2 3 import com.framsticks.params.annotations.FramsClassAnnotation; 4 import com.framsticks.params.annotations.ParamAnnotation; 3 5 import com.framsticks.params.types.*; 4 6 import com.framsticks.util.lang.Numbers; … … 8 10 import java.util.ArrayList; 9 11 import java.util.Arrays; 12 10 13 11 14 /** … … 18 21 */ 19 22 23 @FramsClassAnnotation(name = "prop", id = "prop") 20 24 public class ParamBuilder { 21 25 private final static Logger log = Logger.getLogger(ParamBuilder.class.getName()); … … 28 32 private static final String FLAGS_FIELD = "flags"; 29 33 30 /** The parameter getId. */34 /** The parameter id. */ 31 35 private String id; 32 36 33 37 /** 34 * The parameter internal getId. It's set by a user to use user's own getId in38 * The parameter internal id. It's set by a user to use user's own id in 35 39 * code 36 40 */ … … 40 44 private Integer group = 0; 41 45 42 /** The getFlags stored as a bit sum. */46 /** The flags stored as a bit sum. */ 43 47 private Integer flags = 0; 44 48 45 /** The parameter getName. */49 /** The parameter name. */ 46 50 private String name; 47 51 48 /** The getHelp (description) concerning parameter. */52 /** The help (description) concerning parameter. */ 49 53 private String help; 50 54 51 /** The getType of parameter. */55 /** The type of parameter. */ 52 56 private Class<? extends Param> paramType; 53 57 54 58 private Param param; 55 59 private PrimitiveParam primitiveParam; 56 57 ParamBuilder() { 60 private String typeString; 61 62 public ParamBuilder() { 58 63 } 59 64 … … 76 81 } 77 82 83 @ParamAnnotation 78 84 public ParamBuilder id(String id) { 79 85 this.id = id; … … 87 93 primitiveParam = (PrimitiveParam) param; 88 94 } 95 typeString = param.getFramsTypeName(); 89 96 return this; 90 97 } 91 98 92 99 public <T extends Param> ParamBuilder type(Class<T> type) { 100 assert type != null; 93 101 try { 94 102 return internalSetType(type, type.newInstance()); … … 104 112 105 113 114 /** 115 * @return the id 116 */ 117 @ParamAnnotation 118 public String getId() { 119 return id; 120 } 121 106 122 public ParamBuilder setInternalId(String internalId) { 107 123 this.internalId = internalId; … … 109 125 } 110 126 127 @ParamAnnotation 111 128 public ParamBuilder group(Integer group) { 112 129 this.group = group; … … 114 131 } 115 132 133 @ParamAnnotation 116 134 public ParamBuilder flags(Integer flags) { 117 135 this.flags = flags; … … 119 137 } 120 138 139 @ParamAnnotation 121 140 public ParamBuilder name(String name) { 122 141 this.name = name; … … 143 162 } 144 163 164 @ParamAnnotation 145 165 public ParamBuilder type(String type) { 166 typeString = type; 146 167 147 168 log.trace("parsing type: " + type); … … 233 254 } 234 255 256 @ParamAnnotation 235 257 public ParamBuilder help(String help) { 236 258 this.help = help; 237 259 return this; 260 } 261 262 /** 263 * @return the group 264 */ 265 @ParamAnnotation 266 public Integer getGroup() { 267 return group; 268 } 269 270 /** 271 * @return the flags 272 */ 273 @ParamAnnotation 274 public Integer getFlags() { 275 return flags; 276 } 277 278 /** 279 * @return the name 280 */ 281 @ParamAnnotation 282 public String getName() { 283 return name; 284 } 285 286 /** 287 * @return the help 288 */ 289 @ParamAnnotation 290 public String getHelp() { 291 return help; 292 } 293 294 @ParamAnnotation 295 public String getType() { 296 return typeString; 238 297 } 239 298 … … 328 387 329 388 330 public static FramsClass getFramsClass() {331 return new FramsClass("prop", "prop", null)332 .append(Param.build().id("name").name("Name").type(StringParam.class))333 .append(Param.build().id("id").name("Id").type(StringParam.class))334 .append(Param.build().id("type").name("Type").type(StringParam.class))335 .append(Param.build().id("help").name("Help").type(StringParam.class))336 .append(Param.build().id("group").name("Group").type(DecimalParam.class))337 .append(Param.build().id("flags").name("Flags").type(DecimalParam.class));338 }339 389 340 390 }
Note: See TracChangeset
for help on using the changeset viewer.