@Override public Feature toParticle( ResultSet rs, int colIndex ) throws SQLException { Object value = rs.getObject( colIndex ); if ( value == null ) { return null; } if ( hrefColumn != null ) { return new FeatureReference( resolver, "" + value, null ); } if ( fidPrefix != null ) { return new FeatureReference( resolver, "#" + fidPrefix + value, null ); } return new FeatureReference( resolver, "#" + value, null ); }
private Feature resolveInternalFeature( ReferenceResolvingException e ) { String uri = getURI(); GMLObject object = this.internalResolver.getObject( uri, getBaseURL() ); if ( object != null ) { if ( object instanceof Feature ) { LOG.info( "Feature with uri {} could be resolved by the internal resolver.", uri ); resolve( (Feature) object ); this.internalResolved = true; return (Feature) object; } String msg = "Object with uri '" + uri + "' could be resolved from internal resolver but is no Feature instance."; throw exception = new ReferenceResolvingException( msg ); } throw e; }
@Override public void setProperties( List<Property> props ) throws IllegalArgumentException { getReferencedObject().setProperties( props ); }
List<String> list = refs.get( ref.getId() ); if ( list == null ) { list = new ArrayList<String>(); refs.put( ref.getId(), list ); list = types.get( ref.getId() ); if ( list == null ) { list = new ArrayList<String>(); types.put( ref.getId(), list ); if ( typeIter.next().equals( propName.getLocalPart() ) ) { PropertyType pt = f.getType().getPropertyDeclaration( propName ); Property p = new GenericProperty( pt, new FeatureReference( ctx, "#" + id, null ) ); iter.add( p );
if ( feature instanceof FeatureReference ) { FeatureReference featureReference = (FeatureReference) feature; if ( ( featureReference.isLocal() || featureReference.isResolved() ) && !featureReference.isInternalResolved() ) { subFeatureRow = lookupFeatureRow( feature.getId() ); href = featureReference.getURI(); MappingExpression me = ( (FeatureMapping) mapping ).getHrefMapping(); if ( !( me instanceof DBField ) ) {
private void exportFeatureProperty( FeaturePropertyType pt, FeatureReference ref, GmlXlinkOptions resolveState, QName propName ) throws XMLStreamException, UnknownCRSException, TransformationException { boolean includeNextLevelInOutput = includeNextLevelInOutput( resolveState ); if ( includeNextLevelInOutput ) { if ( pt.getAllowedRepresentation() == REMOTE ) { exportFeaturePropertyByReference( propName, ref, true, resolveState ); } else { if ( referenceExportStrategy.isObjectExported( ref.getId() ) ) { exportAlreadyExportedFeaturePropertyByReference( ref, propName ); } else { exportFeaturePropertyByValue( propName, ref, resolveState ); } } } else { exportFeaturePropertyByReference( propName, ref, false, resolveState ); } }
FeatureReference refFeature = new FeatureReference( gmlStream.getIdContext(), href, null ); memberFeatures.add( refFeature ); gmlStream.getIdContext().addReference( refFeature );
@Override public ExtraProps getExtraProperties() { return getReferencedObject().getExtraProperties(); }
FeatureReference refFeature = null; if ( specialResolver != null ) { refFeature = new FeatureReference( specialResolver, href, xmlStream.getSystemId() ); } else { refFeature = new FeatureReference( idContext, href, xmlStream.getSystemId() );
@Override public void setId( String id ) { getReferencedObject().setId( id ); }
if ( specialResolver != null ) { if( internalResolver == null ) { refFeature = new FeatureReference( specialResolver, href, xmlStream.getSystemId() ); } else { refFeature = new FeatureReference( specialResolver, internalResolver, href, xmlStream.getSystemId() ); refFeature = new FeatureReference( idContext, href, xmlStream.getSystemId() ); } else { refFeature = new FeatureReference( idContext, internalResolver, href, xmlStream.getSystemId() );
@Override public void setPropertyValue( QName propName, int occurence, TypedObjectNode value ) { getReferencedObject().setPropertyValue( propName, occurence, value ); }
@Override public Envelope getEnvelope() { return getReferencedObject().getEnvelope(); }
@Override public QName getName() { return getReferencedObject().getName(); }
@Override public List<Property> getGeometryProperties() { return getReferencedObject().getGeometryProperties(); }
@Override public List<Property> getProperties() { return getReferencedObject().getProperties(); }
@Override public void setExtraProperties( ExtraProps extraProps ) { getReferencedObject().setExtraProperties( extraProps ); }
@Override public void setEnvelope( Envelope env ) { getReferencedObject().setEnvelope( env ); }
@Override public Envelope calcEnvelope() { return getReferencedObject().calcEnvelope(); }
@Override public List<Property> getProperties( QName propName ) { return getReferencedObject().getProperties( propName ); }