public BeanSpec parent() { Class<?> rawType = rawType(); Type type = rawType.getGenericSuperclass(); type = null == type ? rawType.getSuperclass() : type; return null == type ? null : BeanSpec.of(type, injector()); }
public BeanSpec parent() { Class<?> rawType = rawType(); Type type = rawType.getGenericSuperclass(); type = null == type ? rawType.getSuperclass() : type; return null == type ? null : BeanSpec.of(type, injector()); }
private BeanSpec valueSpec() { List<Type> typeParams = targetSpec.typeParams(); E.illegalArgumentIf(typeParams.size() != 2); return BeanSpec.of(typeParams.get(1), targetSpec.injector()); } }
private BeanSpec valueSpec() { List<Type> typeParams = targetSpec.typeParams(); E.illegalArgumentIf(typeParams.size() != 2); return BeanSpec.of(typeParams.get(1), targetSpec.injector()); } }
List<Type> types = beanSpec.typeParams(); if (types.size() > 0) { return interpret(BeanSpec.of(types.get(0), null, beanSpec.injector())) + "[]"; Type key = types.get(0); Type val = types.get(1); String keyStr = interpret(BeanSpec.of(key, null, beanSpec.injector())); String valStr = interpret(BeanSpec.of(val, null, beanSpec.injector())); if ("String".equals(keyStr) && "Object".equals(valStr)) { return "js object";
List<Type> types = beanSpec.typeParams(); if (types.size() > 0) { return interpret(BeanSpec.of(types.get(0), null, beanSpec.injector())) + "[]"; Type key = types.get(0); Type val = types.get(1); String keyStr = interpret(BeanSpec.of(key, null, beanSpec.injector())); String valStr = interpret(BeanSpec.of(val, null, beanSpec.injector())); if ("String".equals(keyStr) && "Object".equals(valStr)) { return "js object";
FieldLoader fieldLoader(ParamKey key, Field field, BeanSpec fieldSpec) { if (field.isAnnotationPresent(ManyToOne.class) || field.isAnnotationPresent(OneToOne.class)) { final FindBy findBy = new FindBy(); Map map = new HashMap<>(); map.put("byId", true); findBy.init(map, BeanSpec.of(field, Act.injector())); Lang.TypeConverter<Object, Object> converter = new Lang.TypeConverter<Object, Object>() { @Override public Object convert(Object s) { findBy.setOnetimeValue(S.string(s)); return findBy.get(); } }; return new FieldLoader(field, findLoader(key, fieldSpec), findLoader(key, BeanSpec.of(String.class, new Annotation[]{}, fieldSpec.name(), fieldSpec.injector())), converter); } return new FieldLoader(field, findLoader(key, fieldSpec)); }
FieldLoader fieldLoader(ParamKey key, Field field, BeanSpec fieldSpec) { if (field.isAnnotationPresent(ManyToOne.class) || field.isAnnotationPresent(OneToOne.class)) { final FindBy findBy = new FindBy(); Map map = new HashMap<>(); map.put("byId", true); findBy.init(map, BeanSpec.of(field, Act.injector())); Lang.TypeConverter<Object, Object> converter = new Lang.TypeConverter<Object, Object>() { @Override public Object convert(Object s) { findBy.setOnetimeValue(S.string(s)); return findBy.get(); } }; return new FieldLoader(field, findLoader(key, fieldSpec), findLoader(key, BeanSpec.of(String.class, new Annotation[]{}, fieldSpec.name(), fieldSpec.injector())), converter); } return new FieldLoader(field, findLoader(key, fieldSpec)); }
List<Type> mapTypes = spec.typeParams(); Type valType = mapTypes.size() > 1 ? mapTypes.get(1) : String.class; BeanSpec subSpec = BeanSpec.of(valType, spec.injector()); boolean isKeyword = false; if (mapTypes.size() > 0) {
List<Type> mapTypes = spec.typeParams(); Type valType = mapTypes.size() > 1 ? mapTypes.get(1) : String.class; BeanSpec subSpec = BeanSpec.of(valType, spec.injector()); boolean isKeyword = false; if (mapTypes.size() > 0) {
private String typeDesc(BeanSpec spec) { String root = classDesc(spec.rawType()); List<java.lang.reflect.Type> typeParams = spec.typeParams(); if (typeParams.isEmpty()) { return root; } S.Buffer sb = S.newBuffer("<"); for (java.lang.reflect.Type type : typeParams) { BeanSpec specx = BeanSpec.of(type, null, spec.injector(), typeParamLookup); sb.append(typeDesc(specx)); } sb.append(">"); FastStr str = FastStr.of(root); str = str.take(str.length() - 1).append(sb.toString()).append(";"); return str.toString(); }
private String typeDesc(BeanSpec spec) { String root = classDesc(spec.rawType()); List<java.lang.reflect.Type> typeParams = spec.typeParams(); if (typeParams.isEmpty()) { return root; } S.Buffer sb = S.newBuffer("<"); for (java.lang.reflect.Type type : typeParams) { BeanSpec specx = BeanSpec.of(type, null, spec.injector(), typeParamLookup); sb.append(typeDesc(specx)); } sb.append(">"); FastStr str = FastStr.of(root); str = str.take(str.length() - 1).append(sb.toString()).append(";"); return str.toString(); }