return new StaticConversionExecutor(sourceClass, targetClass, new ArrayToArray(this)); } else if (Collection.class.isAssignableFrom(targetClass)) { if (!targetClass.isInterface() && Modifier.isAbstract(targetClass.getModifiers())) {
return new StaticConversionExecutor(sourceClass, targetClass, new ArrayToArray(elementConverter)); } else if (converter.getTargetClass().isAssignableFrom(sourceComponentType) && converter instanceof TwoWayConverter) { ConversionExecutor elementConverter = new StaticConversionExecutor(sourceComponentType, targetComponentType, new ReverseConverter(twoWay)); return new StaticConversionExecutor(sourceClass, targetClass, new ArrayToArray(elementConverter)); } else { throw new ConversionExecutorNotFoundException(sourceClass, targetClass,
return new StaticConversionExecutor(sourceClass, targetClass, new ArrayToArray(elementConverter)); } else if (converter.getTargetClass().isAssignableFrom(sourceComponentType) && converter instanceof TwoWayConverter) { ConversionExecutor elementConverter = new StaticConversionExecutor(sourceComponentType, targetComponentType, new ReverseConverter(twoWay)); return new StaticConversionExecutor(sourceClass, targetClass, new ArrayToArray(elementConverter)); } else { throw new ConversionExecutorNotFoundException(sourceClass, targetClass,