/** * Utility method to apply the two rescale visitors without duplicating code * * @param fts * @param visitor */ void rescaleFeatureTypeStyle(LiteFeatureTypeStyle fts, DuplicatingStyleVisitor visitor) { for (int i = 0; i < fts.ruleList.length; i++) { visitor.visit(fts.ruleList[i]); fts.ruleList[i] = (Rule) visitor.getCopy(); } if (fts.elseRules != null) { for (int i = 0; i < fts.elseRules.length; i++) { visitor.visit(fts.elseRules[i]); fts.elseRules[i] = (Rule) visitor.getCopy(); } } }
private ExternalGraphic[] copy(ExternalGraphic[] externalGraphics) { if (externalGraphics == null) return null; ExternalGraphic[] copy = new ExternalGraphic[externalGraphics.length]; for (int i = 0; i < externalGraphics.length; i++) { copy[i] = copy(externalGraphics[i]); } return copy; }
/** Null safe copy of a single font */ protected Font copy(Font font) { if (font == null) return font; List<Expression> fontFamily = copyExpressions(font.getFamily()); Expression fontStyle = copy(font.getStyle()); Expression fontWeight = copy(font.getWeight()); Expression fontSize = copy(font.getSize()); Font copy = sf.font(fontFamily, fontStyle, fontWeight, fontSize); return copy; }
Rule copy = (Rule) cloner.getCopy(); if (!Filter.EXCLUDE.equals(copy.getFilter())) { ruleList.add(copy);
public void testStroke() { Stroke stroke = styleFactory.getDefaultStroke(); DuplicatingStyleVisitor duplicate = new DuplicatingStyleVisitor(styleFactory); stroke.accept(duplicate); Stroke clone = (Stroke) duplicate.getCopy(); assertClone(stroke, clone); Stroke notEq = styleFactory.createStroke( filterFactory.literal("#FF0000"), filterFactory.literal(10)); assertEqualsContract(clone, notEq, stroke); // a stroke is a complex object with lots of properties, // need more extensive tests here. Stroke dashArray = styleFactory.getDefaultStroke(); dashArray.setDashArray(new float[] {1.0f, 2.0f, 3.0f}); dashArray.accept(duplicate); Stroke dashArray2 = (Stroke) duplicate.getCopy(); assertEqualsContract(dashArray, dashArray2); }
public void visit(Symbolizer sym) { if (sym instanceof RasterSymbolizer) { visit((RasterSymbolizer) sym); } else if (sym instanceof LineSymbolizer) { visit((LineSymbolizer) sym); } else if (sym instanceof PolygonSymbolizer) { visit((PolygonSymbolizer) sym); } else if (sym instanceof PointSymbolizer) { visit((PointSymbolizer) sym); } else if (sym instanceof TextSymbolizer) { visit((TextSymbolizer) sym); } else { throw new RuntimeException("visit(Symbolizer) unsupported"); } }
public void visit( Rule rule ) { DuplicatingStyleVisitor dupeStyleVisitor = new DuplicatingStyleVisitor(); dupeStyleVisitor.visit(rule); Rule clone = (Rule) dupeStyleVisitor.getCopy(); super.visit(clone); } };
protected void setUp() throws Exception { sf = CommonFactoryFinder.getStyleFactory(null); ff = CommonFactoryFinder.getFilterFactory2(null); sb = new StyleBuilder(sf, ff); visitor = new DuplicatingStyleVisitor(sf, ff); }
Rule updatedRule = (Rule) update.getCopy(); featureTypeStyle.rules().set(i, updatedRule);
public FeatureTypeStyle duplicate(FeatureTypeStyle fts) { DuplicatingStyleVisitor xerox = new DuplicatingStyleVisitor(); fts.accept(xerox); return (FeatureTypeStyle) xerox.getCopy(); }
@Override public void visit(Symbolizer sym) { this.defaultUnit = sym.getUnitOfMeasure(); try { super.visit(sym); } finally { this.defaultUnit = null; } }
Rule updatedRule = (Rule) update.getCopy(); featureTypeStyle.rules().set(i, updatedRule);
public Rule duplicate(Rule rule) { DuplicatingStyleVisitor xerox = new DuplicatingStyleVisitor(); rule.accept(xerox); return (Rule) xerox.getCopy(); }
@Override public void visit(RasterSymbolizer sym) { this.defaultUnit = sym.getUnitOfMeasure(); try { super.visit(sym); } finally { this.defaultUnit = null; } }
protected SelectedChannelType[] copy(SelectedChannelType[] channels) { if (channels == null) return null; SelectedChannelType[] copy = new SelectedChannelType[channels.length]; for (int i = 0; i < channels.length; i++) { copy[i] = copy(channels[i]); } return copy; }
Rule updatedRule = (Rule) update.getCopy(); featureTypeStyle.rules().set(i, updatedRule);
public Symbolizer duplicate(Symbolizer symbol) { DuplicatingStyleVisitor xerox = new DuplicatingStyleVisitor(); symbol.accept(xerox); return (Symbolizer) xerox.getCopy(); }
@Override public void visit(PointSymbolizer sym) { this.defaultUnit = sym.getUnitOfMeasure(); try { super.visit(sym); } finally { this.defaultUnit = null; } }
private Mark[] copy(Mark[] marks) { if (marks == null) return null; Mark[] copy = new Mark[marks.length]; for (int i = 0; i < marks.length; i++) { copy[i] = copy(marks[i]); } return copy; }
Style cleaned = (Style) cleaner.getCopy(); layer.setStyle(cleaned);