public String getFullName() { String fullName = name; BandData upBand = parentBand; while ((upBand != null) && (upBand.level > 1)) { fullName = upBand.getName() + "." + fullName; upBand = upBand.parentBand; } return fullName; }
public String getFullName() { String fullName = name; BandData upBand = parentBand; while ((upBand != null) && (upBand.level > 1)) { fullName = upBand.getName() + "." + fullName; upBand = upBand.parentBand; } return fullName; }
@Override public boolean visit(BandData band) { boolean found = band.getName().equals(name); if (found) { foundBand = band; } return found; } }
protected boolean containsVisitedBand(String bandName) { for (Map.Entry<BandData, Iterator<BandData>> entry : visitedBands.entrySet()) { if (entry.getKey().getName().equals(bandName)) return true; } return false; } }
protected boolean containsVisitedBand(String bandName) { for (Map.Entry<BandData, Iterator<BandData>> entry : visitedBands.entrySet()) { if (entry.getKey().getName().equals(bandName)) return true; } return false; } }
protected void addParentBandDataToParameters(BandData parentBand, Map<String, Object> currentParams) { if (parentBand != null) { String parentBandName = parentBand.getName(); for (Map.Entry<String, Object> entry : parentBand.getData().entrySet()) { currentParams.put(parentBandName + "." + entry.getKey(), entry.getValue()); } } } }
protected Map getTemplateModel(BandData rootBand) { Map<String, Object> model = new HashMap<String, Object>(); model.put(rootBand.getName(), getBandModel(rootBand)); return model; }
protected BandData findBandByPath(String path) { if (rootBand.getName().equals(path)) return rootBand; String[] pathParts = path.split("\\."); BandData currentBand = rootBand; for (String pathPart : pathParts) { if (currentBand == null) return null; currentBand = currentBand.findBandRecursively(pathPart); } return currentBand; }
protected BandData findBandByPath(String path) { if (rootBand.getName().equals(path)) return rootBand; String[] pathParts = path.split("\\."); BandData currentBand = rootBand; for (String pathPart : pathParts) { if (currentBand == null) return null; currentBand = currentBand.findBandRecursively(pathPart); } return currentBand; }
protected Map getTemplateModel(BandData rootBand) { Map<String, Object> model = new HashMap<String, Object>(); model.put(rootBand.getName(), getBandModel(rootBand)); return model; }
protected void addParentBandDataToParameters(BandData parentBand, Map<String, Object> currentParams) { if (parentBand != null) { String parentBandName = parentBand.getName(); for (Map.Entry<String, Object> entry : parentBand.getData().entrySet()) { currentParams.put(parentBandName + "." + entry.getKey(), entry.getValue()); } } } }
protected void addParentBandDataToParameters(BandData parentBand, Map<String, Object> currentParams) { if (parentBand != null) { String parentBandName = parentBand.getName(); for (Map.Entry<String, Object> entry : parentBand.getData().entrySet()) { currentParams.put(parentBandName + "." + entry.getKey(), entry.getValue()); } } } }
protected Range getLastRenderedBandForThisLevel(BandData band) { List<BandData> sameLevelBands = band.getParentBand().getChildrenByName(band.getName()); for (BandData sameLevelBand : sameLevelBands) { Range range = bandsForRanges.resultForBand(sameLevelBand); if (range != null) { return lastRenderedRangeForBandName.get(band.getName()); } } return null; }
protected Range getLastRenderedBandForThisLevel(BandData band) { List<BandData> sameLevelBands = band.getParentBand().getChildrenByName(band.getName()); for (BandData sameLevelBand : sameLevelBands) { Range range = bandsForRanges.resultForBand(sameLevelBand); if (range != null) { return lastRenderedRangeForBandName.get(band.getName()); } } return null; }
/** * This method adds range bounds to cache. Key is bandName * * @param band - band * @param crefs - range */ protected void addRangeBounds(BandData band, CellReference[] crefs) { if (templateBounds.containsKey(band.getName())) return; Bounds bounds = new Bounds(crefs[0].getRow(), crefs[0].getCol(), crefs[crefs.length - 1].getRow(), crefs[crefs.length - 1].getCol()); templateBounds.put(band.getName(), bounds); }
/** * This method adds range bounds to cache. Key is bandName * * @param band - band * @param crefs - range */ protected void addRangeBounds(BandData band, CellReference[] crefs) { if (templateBounds.containsKey(band.getName())) return; Bounds bounds = new Bounds(crefs[0].getRow(), crefs[0].getCol(), crefs[crefs.length - 1].getRow(), crefs[crefs.length - 1].getCol()); templateBounds.put(band.getName(), bounds); }
protected void updateRangeMappings(BandData band, Range templateRange, List<Cell> resultCells) { if (resultCells != null && !resultCells.isEmpty()) { Range resultRange = Range.fromCells(templateRange.getSheet(), getFirst(resultCells).getR(), resultCells.get(resultCells.size() - 1).getR()); rangeDependencies.addDependency(templateRange, resultRange); bandsForRanges.add(band, templateRange, resultRange); lastRenderedRangeForBandName.put(band.getName(), resultRange); } }