- Timestamp:
- 06/30/13 12:48:20 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
java/main/src/main/java/com/framsticks/params/FramsClassBuilder.java
r87 r88 21 21 import com.framsticks.parsers.FileSource; 22 22 import com.framsticks.parsers.Loaders; 23 import com.framsticks.util.Builder; 24 import com.framsticks.util.FramsticksException; 23 25 import com.framsticks.util.lang.Strings; 24 26 25 27 @FramsClassAnnotation(id = "class", name = "class") 26 public class FramsClassBuilder {28 public class FramsClassBuilder implements Builder<FramsClass> { 27 29 private static final Logger log = 28 30 Logger.getLogger(FramsClassBuilder.class); … … 163 165 } 164 166 165 public static Map<Class<?>, FramsClass> synchronizedCacheForBasedOnForJavaClass = Collections.synchronizedMap(new HashMap<Class<?>, FramsClass>());167 public static final Map<Class<?>, FramsClass> synchronizedCacheForBasedOnForJavaClass = Collections.synchronizedMap(new HashMap<Class<?>, FramsClass>()); 166 168 167 169 public FramsClass forClass(Class<?> javaClass) throws ConstructionException { … … 171 173 } 172 174 173 log. info("building for class " + javaClass);175 log.debug("building for class " + javaClass); 174 176 175 177 FramsClassAnnotation fca = javaClass.getAnnotation(FramsClassAnnotation.class); … … 184 186 185 187 for (ParamCandidate pc : candidates.values()) { 186 param(Param.build().id(pc.getId()).name(pc.getName()).type(getParamTypeForNativeType(pc.getType())).flags(pc.getFlags())); 188 String type = getParamTypeForNativeType(pc.getType()); 189 if (type == null) { 190 throw new FramsticksException().msg("failed to find type for param candidate").arg("candidate", pc); 191 } 192 param(Param.build().id(pc.getId()).name(pc.getName()).type(type).flags(pc.getFlags())); 187 193 } 188 194 … … 233 239 234 240 public FramsClass finish() { 235 return new FramsClass( id, name, description, params, groups);241 return new FramsClass(this); 236 242 } 237 243 … … 244 250 public FramsClassBuilder param(ParamBuilder builder) { 245 251 return append(builder.finish()); 252 } 253 254 @AutoAppendAnnotation 255 public FramsClassBuilder group(GroupBuilder builder) { 256 return group(builder.finish()); 246 257 } 247 258
Note: See TracChangeset
for help on using the changeset viewer.