当前位置: 首页>>代码示例>>Java>>正文


Java GenericCollectionTypeResolver类代码示例

本文整理汇总了Java中org.springframework.core.GenericCollectionTypeResolver的典型用法代码示例。如果您正苦于以下问题:Java GenericCollectionTypeResolver类的具体用法?Java GenericCollectionTypeResolver怎么用?Java GenericCollectionTypeResolver使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


GenericCollectionTypeResolver类属于org.springframework.core包,在下文中一共展示了GenericCollectionTypeResolver类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: growCollectionIfNecessary

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
private void growCollectionIfNecessary(Collection<Object> collection, int index, String name,
		PropertyDescriptor pd, int nestingLevel) {

	if (!this.autoGrowNestedPaths) {
		return;
	}
	int size = collection.size();
	if (index >= size && index < this.autoGrowCollectionLimit) {
		Class<?> elementType = GenericCollectionTypeResolver.getCollectionReturnType(pd.getReadMethod(), nestingLevel);
		if (elementType != null) {
			for (int i = collection.size(); i < index + 1; i++) {
				collection.add(newValue(elementType, name));
			}
		}
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:17,代码来源:BeanWrapperImpl.java

示例2: extractCollectionDirect

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
/**
 *	@param objectToUnserialize
 *	@param objectRootURI
 *	@param repo
 */
@SuppressWarnings( "unchecked" )
private <T extends Collection<?>> void extractCollectionDirect(
		final T objectToUnserialize,
		final String objectRootURI, final Repository repo )
{
	final Class<?> collectionType =
			GenericCollectionTypeResolver.getCollectionType(
					objectToUnserialize.getClass() );

	// TODO: This needs to be sorted out. We can't pass null.
	// Unserialize the collection items.
	final Object[] seq = this.extractCollectionObjects(
			objectRootURI, repo, collectionType,
			"", objectRootURI,
			RDFSerializer.RDF_OPENIMAJ_P_COLLECTIONITEM );

	((Collection<Object>)objectToUnserialize).clear();
	for( int i = 0; i < seq.length; i++ )
		((Collection<Object>)objectToUnserialize).add( seq[i] );
}
 
开发者ID:openimaj,项目名称:openimaj,代码行数:26,代码来源:RDFSerializer.java

示例3: mapCollection

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
/**
 * @param source
 * @param depth
 * @param dtoToEntity
 * @param bean
 * @param field
 * @param toSet
 * @param targetClass
 * @throws IllegalAccessException
 */
@SuppressWarnings({ RAWTYPES, UNCHECKED })
private void mapCollection(final Object source, final int depth,
        final boolean dtoToEntity, final Object bean, Field field,
        Field toSet, Class<?> targetClass) throws IllegalAccessException {

    if (depth > 0) {
        Collection colTarget = getNewCollection(targetClass);
        Collection colSource = (Collection) field.get(source);
        if (colSource == null) {
            return;
        }
        Class targetRowType = GenericCollectionTypeResolver
                .getCollectionFieldType(toSet);
        for (Object row : colSource) {
            if (row instanceof Shareable) {
                colTarget.add(convert(row.getClass(), targetRowType, row,
                        depth - 1, dtoToEntity));
            } else {
                colTarget.add(map(row, targetRowType, depth - 1,
                        dtoToEntity));
            }
        }
        toSet.set(bean, colTarget);
    }
}
 
开发者ID:fpuna-cia,项目名称:karaku,代码行数:36,代码来源:ReflectionConverter.java

示例4: getCollectionParameterType

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
private Class<?> getCollectionParameterType(MethodParameter parameter) {
	Class<?> paramType = parameter.getParameterType();
	if (Collection.class.equals(paramType) || List.class.isAssignableFrom(paramType)){
		Class<?> valueType = GenericCollectionTypeResolver.getCollectionParameterType(parameter);
		if (valueType != null) {
			return valueType;
		}
	}
	return null;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:11,代码来源:RequestParamMethodArgumentResolver.java

示例5: createInstance

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
protected List<Object> createInstance() {
	if (this.sourceList == null) {
		throw new IllegalArgumentException("'sourceList' is required");
	}
	List<Object> result = null;
	if (this.targetListClass != null) {
		result = BeanUtils.instantiateClass(this.targetListClass);
	}
	else {
		result = new ArrayList<Object>(this.sourceList.size());
	}
	Class<?> valueType = null;
	if (this.targetListClass != null) {
		valueType = GenericCollectionTypeResolver.getCollectionType(this.targetListClass);
	}
	if (valueType != null) {
		TypeConverter converter = getBeanTypeConverter();
		for (Object elem : this.sourceList) {
			result.add(converter.convertIfNecessary(elem, valueType));
		}
	}
	else {
		result.addAll(this.sourceList);
	}
	return result;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:29,代码来源:ListFactoryBean.java

示例6: createInstance

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
protected Set<Object> createInstance() {
	if (this.sourceSet == null) {
		throw new IllegalArgumentException("'sourceSet' is required");
	}
	Set<Object> result = null;
	if (this.targetSetClass != null) {
		result = BeanUtils.instantiateClass(this.targetSetClass);
	}
	else {
		result = new LinkedHashSet<Object>(this.sourceSet.size());
	}
	Class<?> valueType = null;
	if (this.targetSetClass != null) {
		valueType = GenericCollectionTypeResolver.getCollectionType(this.targetSetClass);
	}
	if (valueType != null) {
		TypeConverter converter = getBeanTypeConverter();
		for (Object elem : this.sourceSet) {
			result.add(converter.convertIfNecessary(elem, valueType));
		}
	}
	else {
		result.addAll(this.sourceSet);
	}
	return result;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:29,代码来源:SetFactoryBean.java

示例7: createInstance

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
protected Map<Object, Object> createInstance() {
	if (this.sourceMap == null) {
		throw new IllegalArgumentException("'sourceMap' is required");
	}
	Map<Object, Object> result = null;
	if (this.targetMapClass != null) {
		result = BeanUtils.instantiateClass(this.targetMapClass);
	}
	else {
		result = new LinkedHashMap<Object, Object>(this.sourceMap.size());
	}
	Class<?> keyType = null;
	Class<?> valueType = null;
	if (this.targetMapClass != null) {
		keyType = GenericCollectionTypeResolver.getMapKeyType(this.targetMapClass);
		valueType = GenericCollectionTypeResolver.getMapValueType(this.targetMapClass);
	}
	if (keyType != null || valueType != null) {
		TypeConverter converter = getBeanTypeConverter();
		for (Map.Entry<?, ?> entry : this.sourceMap.entrySet()) {
			Object convertedKey = converter.convertIfNecessary(entry.getKey(), keyType);
			Object convertedValue = converter.convertIfNecessary(entry.getValue(), valueType);
			result.put(convertedKey, convertedValue);
		}
	}
	else {
		result.putAll(this.sourceMap);
	}
	return result;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:33,代码来源:MapFactoryBean.java

示例8: determineType

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
/**
 * Determine the expected type as the returned type of the method.
 * If the return type is a List it will return the generic element type instead of a List.
 * @param resource - resource with methods
 * @param method Method
 * @return Class - type of class it needs.
 */
@SuppressWarnings("rawtypes")
protected static Class determineType(Class resource, Method method)
{
    Method resolvedMethod = BridgeMethodResolver.findBridgedMethod(method);

    /*
    * The api is consistent that the object passed in must match the object passed out
    * however, operations are different, if the param is supplied  it doesn't have to match
    * the return type.
    * So we need special logic for operations
     */
    Annotation annot = AnnotationUtils.findAnnotation(resolvedMethod, Operation.class);
    if (annot != null)
    {
        return determineOperationType(resource, method);
    }
    else
    {
        Class returnType = GenericTypeResolver.resolveReturnType(resolvedMethod, resource);
        if (List.class.isAssignableFrom(returnType))
        {
            return GenericCollectionTypeResolver.getCollectionReturnType(method);
        }
        return returnType;
    }
}
 
开发者ID:Alfresco,项目名称:alfresco-remote-api,代码行数:34,代码来源:ResourceInspectorUtil.java

示例9: getCollectionParameterType

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
private Class<?> getCollectionParameterType(MethodParameter methodParam) {
	Class<?> paramType = methodParam.getNestedParameterType();
	if (Collection.class == paramType || List.class.isAssignableFrom(paramType)){
		Class<?> valueType = GenericCollectionTypeResolver.getCollectionParameterType(methodParam);
		if (valueType != null) {
			return valueType;
		}
	}
	return null;
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:11,代码来源:RequestPartMethodArgumentResolver.java

示例10: getCollectionParameterType

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
private Class<?> getCollectionParameterType(MethodParameter parameter) {
	Class<?> paramType = parameter.getParameterType();
	if (Collection.class == paramType || List.class.isAssignableFrom(paramType)){
		Class<?> valueType = GenericCollectionTypeResolver.getCollectionParameterType(parameter);
		if (valueType != null) {
			return valueType;
		}
	}
	return null;
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:11,代码来源:RequestParamMethodArgumentResolver.java

示例11: handleCollection

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
@SuppressWarnings({ RAWTYPES, UNCHECKED })
private Object handleCollection(Class currentClass, Field field,
		Object current, String currentPath) {

	try {
		field.setAccessible(true);
		Object newList = field.get(current);
		if (newList == null) {
			newList = getNew(currentClass);
			field.set(current, newList);
		}

		Object toRet;
		Collection list = (Collection) newList;
		if (!nestedObjectHandler.has(currentPath)) {
			Class cClass = GenericCollectionTypeResolver
					.getCollectionFieldType(field);
			toRet = cClass.newInstance();
			list.add(toRet);
			nestedObjectHandler.set(currentPath, toRet);
		} else {
			toRet = nestedObjectHandler.get(currentPath);
		}

		field.setAccessible(false);
		return toRet;
	} catch (Exception e) {
		throw new KarakuRuntimeException(e);
	}

}
 
开发者ID:fpuna-cia,项目名称:karaku,代码行数:32,代码来源:KarakuAliasToBeanTransformer.java

示例12: getType

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
private static Class<?> getType(Field field) {

		Class<?> toRet = field.getType();
		// Si tenemos una lista, buscar el tipo de la lista.
		if (Collection.class.isAssignableFrom(toRet)) {
			toRet = GenericCollectionTypeResolver.getCollectionFieldType(field);
		}
		return toRet;
	}
 
开发者ID:fpuna-cia,项目名称:karaku,代码行数:10,代码来源:TestUtils.java

示例13: isMultipartFileCollection

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
private boolean isMultipartFileCollection(MethodParameter parameter) {
	Class<?> paramType = parameter.getParameterType();
	if (Collection.class.equals(paramType) || List.class.isAssignableFrom(paramType)){
		Class<?> valueType = GenericCollectionTypeResolver.getCollectionParameterType(parameter);
		if (valueType != null && valueType.equals(MultipartFile.class)) {
			return true;
		}
	}
	return false;
}
 
开发者ID:deathspeeder,项目名称:class-guard,代码行数:11,代码来源:RequestPartMethodArgumentResolver.java

示例14: createInstance

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
protected List createInstance() {
	if (this.sourceList == null) {
		throw new IllegalArgumentException("'sourceList' is required");
	}
	List result = null;
	if (this.targetListClass != null) {
		result = (List) BeanUtils.instantiateClass(this.targetListClass);
	}
	else {
		result = new ArrayList(this.sourceList.size());
	}
	Class valueType = null;
	if (this.targetListClass != null) {
		valueType = GenericCollectionTypeResolver.getCollectionType(this.targetListClass);
	}
	if (valueType != null) {
		TypeConverter converter = getBeanTypeConverter();
		for (Object elem : this.sourceList) {
			result.add(converter.convertIfNecessary(elem, valueType));
		}
	}
	else {
		result.addAll(this.sourceList);
	}
	return result;
}
 
开发者ID:deathspeeder,项目名称:class-guard,代码行数:29,代码来源:ListFactoryBean.java

示例15: createInstance

import org.springframework.core.GenericCollectionTypeResolver; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
protected Set createInstance() {
	if (this.sourceSet == null) {
		throw new IllegalArgumentException("'sourceSet' is required");
	}
	Set result = null;
	if (this.targetSetClass != null) {
		result = (Set) BeanUtils.instantiateClass(this.targetSetClass);
	}
	else {
		result = new LinkedHashSet(this.sourceSet.size());
	}
	Class valueType = null;
	if (this.targetSetClass != null) {
		valueType = GenericCollectionTypeResolver.getCollectionType(this.targetSetClass);
	}
	if (valueType != null) {
		TypeConverter converter = getBeanTypeConverter();
		for (Object elem : this.sourceSet) {
			result.add(converter.convertIfNecessary(elem, valueType));
		}
	}
	else {
		result.addAll(this.sourceSet);
	}
	return result;
}
 
开发者ID:deathspeeder,项目名称:class-guard,代码行数:29,代码来源:SetFactoryBean.java


注:本文中的org.springframework.core.GenericCollectionTypeResolver类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。