Refine search
@Override public Object visit(Id filter, Object data) { for (Identifier id : filter.getIdentifiers()) { if (id instanceof FeatureId) { FeatureId fid = (FeatureId) id; if (fid.getID() != null) { String[] split = fid.getID().split("\\."); if (split.length > 1) { ResourceInfo r = catalog.getResourceByName(split[0], ResourceInfo.class); if (r != null) { typeNames.add(new QName(r.getNamespace().getURI(), r.getName())); } } } } } return data; }
public Object visit(Id filter, Object extraData) { if (filter.getIDs().size() == 0) { return Filter.EXCLUDE; for (Identifier id : filter.getIdentifiers()) { if (id instanceof FeatureId || id instanceof GmlObjectId) { if (fidValidator.isValid((String) id.getID())) { validFids.add(id);
@SuppressWarnings("unchecked") @Override public Object visit(Id filter, Object data) { if (mCollectStringIds) { Set set = (Set) data; set.addAll(filter.getIDs()); return set; } else { Set set = (Set) data; set.addAll(filter.getIdentifiers()); return set; } } }
public Object visit(Id filter, Object extraData) { Set<Identifier> fids = filter.getIdentifiers(); for (Identifier fid : fids) { AttributesImpl atts = new AttributesImpl(); atts.addAttribute(null, "fid", "fid", null, fid.toString()); element("FeatureId", null, atts); } return extraData; }
@Override public Object visit(Id filter, Object extraData) { Set<Identifier> identifiers = filter.getIdentifiers(); Set<Identifier> renamedIdentifiers = identifiers .stream() .map( id -> { String name = id.getID().toString(); if (name.startsWith(prefix)) { name = name.substring(prefix.length()); } return getFactory(extraData).featureId(name); }) .collect(Collectors.toSet()); return getFactory(extraData).id(renamedIdentifiers); } }
public Object visit(Id filter, Object extraData) { Set ids = filter.getIDs(); if (ids.isEmpty()) { throw new IllegalArgumentException("Invalid fid filter provides, has no fids inside"); } Set<FeatureId> fids = new HashSet<FeatureId>(); for (Iterator it = ids.iterator(); it.hasNext(); ) { FeatureId id = new FeatureIdImpl((String) it.next()); FeatureId retyped = RetypingFeatureCollection.reTypeId( id, map.getFeatureType(), map.getOriginalFeatureType()); fids.add(retyped); } return ff.id(fids); } }
public void testEmptyFid() { Filter result = (Filter) emptyFid.accept(simpleVisitor, null); assertEquals(Filter.EXCLUDE, result); }
protected void queryFidFilter() { Id fidFilter = (Id) filter; if (fids == null) { fids = fidFilter.getIdentifiers().iterator(); } while (fids.hasNext() && next == null) { String fid = fids.next().toString(); if (!encounteredFids.contains(fid)) { next = (F) diff.getModified().get(fid); if (next == null) { next = (F) diff.getAdded().get(fid); } } } }
final Set<Identifier> identifiers = ((Id) supportedFilter).getIdentifiers(); StringBuffer idValues = new StringBuffer(); for (Iterator<Identifier> it = identifiers.iterator(); it.hasNext(); ) { Object id = it.next().getID(); if (id instanceof FeatureId) { idValues.append(((FeatureId) id).getRid());
@SuppressWarnings("unchecked") @Override public Object visit( Id filter, Object data ) { if( mCollectStringIds){ Set set = (Set) data; set.addAll( filter.getIDs() ); return set; }else{ Set set = (Set) data; set.addAll( filter.getIdentifiers()); return set; } } }
protected int expected(Filter filter) { if (filter instanceof Id) { Id id = (Id) filter; return id.getIDs().size(); } return -1; }
public void testRegExFIDValidator() { FIDValidator validator = new SimplifyingFilterVisitor.RegExFIDValidator("abc\\.\\d+"); simpleVisitor.setFIDValidator(validator); Set<Identifier> ids = new HashSet<Identifier>(); ids.add(ff.featureId("abc..")); ids.add(ff.featureId(".abc.1")); ids.add(ff.featureId("abc.123")); ids.add(ff.featureId("abc.ax")); Id filter = ff.id(ids); Filter result = (Filter) filter.accept(simpleVisitor, null); Filter expected = ff.id(Collections.singleton(ff.featureId("abc.123"))); assertEquals(expected, result); }
public IdBuilder<P> reset(Id filter) { if (filter == null) { return unset(); } this.ids.clear(); this.ids.addAll(filter.getIdentifiers()); this.unset = false; return this; }
@Override public Object visit(Id filter, Object extraData) { BasicDBObject output = asDBObject(extraData); Set<Identifier> ids = filter.getIdentifiers(); List<ObjectId> objectIds = new ArrayList<ObjectId>(ids.size()); for (Identifier id : ids) { objectIds.add(new ObjectId(id.toString())); } Object objectIdDBO = (objectIds.size() > 1) ? new BasicDBObject("$in", objectIds) : objectIds.get(0); output.put("_id", objectIdDBO); return output; }
@Override public Object visit(Id filter, Object extraData) { Set<FeatureId> fidSet = new HashSet<FeatureId>(); for( Identifier identifier : filter.getIdentifiers() ){ String target = (String) identifier.getID(); String fid = getFinalFid( target ); fidSet.add( ff.featureId( fid ) ); } return ff.id( fidSet ); }
public Object visit(Id filter, Object extraData) { if (filter.getIDs().size() == 0) { return Filter.EXCLUDE; for (Identifier id : filter.getIdentifiers()) { if(id instanceof FeatureId || id instanceof GmlObjectId){ if (fidValidator.isValid((String)id.getID())) { validFids.add(id);
public Object visit(Id filter, Object extraData) { Data data = new Data(); data.fids.addAll(filter.getIDs()); current.push(data); return extraData; }
public void testFidValidity() { simpleVisitor.setFIDValidator( new SimplifyingFilterVisitor.FIDValidator() { public boolean isValid(String fid) { return fid.startsWith("pass"); } }); Set<Identifier> ids = new HashSet<Identifier>(); ids.add(ff.featureId("notPass")); Id filter = ff.id(ids); assertEquals(Filter.EXCLUDE, filter.accept(simpleVisitor, null)); ids.add(ff.featureId("pass1")); ids.add(ff.featureId("pass2")); filter = ff.id(ids); Set<Identifier> validIds = new HashSet<Identifier>(); validIds.add(ff.featureId("pass2")); validIds.add(ff.featureId("pass1")); Filter expected = ff.id(validIds); assertEquals(expected, filter.accept(simpleVisitor, null)); }
public Object visit(Id filter, Object extraData) { Data data = new Data(); for (Identifier identifier : filter.getIdentifiers()) { FeatureId featureIdentifier = (FeatureId) identifier; data.fids.add(featureIdentifier.getID()); } current.push(data); return extraData; } // Include
/** builds a ecql id expression: in (id1, id2, ...) */ @Override public Object visit(Id filter, Object extraData) { StringBuilder ecql = FilterToTextUtil.asStringBuilder(extraData); ecql.append("IN ("); Iterator<Identifier> iter = filter.getIdentifiers().iterator(); while (iter.hasNext()) { Identifier identifier = iter.next(); String id = identifier.toString(); boolean needsQuotes = !NUMBER.matcher(id).matches(); if (needsQuotes) { ecql.append('\''); } ecql.append(identifier); if (needsQuotes) { ecql.append('\''); } if (iter.hasNext()) { ecql.append(","); } } ecql.append(")"); return ecql; }