public <T extends AbstractModel> T mapToModel(T dst, String tableAlias) { TableMappingVisitors visitors = getTableMappingVisitors(); if (visitors != null) { @SuppressWarnings("unchecked") TableModelMappingVisitor<T> mapper = visitors.get((Class<T>) dst.getClass(), tableAlias); if (mapper != null) { return mapper.map(this, dst); } } return dst; }
public List<AbstractModel> mapToSourceModels() { List<AbstractModel> result = new ArrayList<>(); TableMappingVisitors visitors = getTableMappingVisitors(); if (visitors != null) { Set<Map.Entry<Class<? extends AbstractModel>, Map<String, TableModelMappingVisitor<?>>>> allMappings = visitors.allMappings(); for (Map.Entry<Class<? extends AbstractModel>, Map<String, TableModelMappingVisitor<?>>> entry : allMappings) { try { Class<? extends AbstractModel> cls = entry.getKey(); Map<String, TableModelMappingVisitor<?>> clsMappers = entry.getValue(); for (String table : clsMappers.keySet()) { result.add(mapToModel(cls.newInstance(), table)); } } catch (Exception e) { throw new RuntimeException(e); } } } return result; }
public <T extends AbstractModel> T mapToModel(T dst, String tableAlias) { TableMappingVisitors visitors = getTableMappingVisitors(); if (visitors != null) { @SuppressWarnings("unchecked") TableModelMappingVisitor<T> mapper = visitors.get((Class<T>) dst.getClass(), tableAlias); if (mapper != null) { return mapper.map(this, dst); } } return dst; }
public List<AbstractModel> mapToSourceModels() { List<AbstractModel> result = new ArrayList<>(); TableMappingVisitors visitors = getTableMappingVisitors(); if (visitors != null) { Set<Map.Entry<Class<? extends AbstractModel>, Map<String, TableModelMappingVisitor<?>>>> allMappings = visitors.allMappings(); for (Map.Entry<Class<? extends AbstractModel>, Map<String, TableModelMappingVisitor<?>>> entry : allMappings) { try { Class<? extends AbstractModel> cls = entry.getKey(); Map<String, TableModelMappingVisitor<?>> clsMappers = entry.getValue(); for (String table : clsMappers.keySet()) { result.add(mapToModel(cls.newInstance(), table)); } } catch (Exception e) { throw new RuntimeException(e); } } } return result; }