writer.setValue(Boolean.toString(vt.isEscapeSql())); writer.endNode(); if (vt.getPrimaryKeyColumns() != null) { for (String pk : vt.getPrimaryKeyColumns()) { writer.startNode("keyColumn"); writer.setValue(pk);
if (virtualTables.containsKey(tableName)) { VirtualTable vt = virtualTables.get(tableName); if (vt.getPrimaryKeyColumns().size() == 0) { pkey = new NullPrimaryKey(tableName); } else { for (String pkName : vt.getPrimaryKeyColumns()) {
if(virtualTables.containsKey(tableName)) { VirtualTable vt = virtualTables.get(tableName); if(vt.getPrimaryKeyColumns().size() == 0) { pkey = new NullPrimaryKey( tableName ); } else { for (String pkName : vt.getPrimaryKeyColumns()) {
void setFeatureType(SimpleFeatureType ft, VirtualTable vt) { attributes.clear(); for (AttributeDescriptor ad : ft.getAttributeDescriptors()) { SQLViewAttribute at = new SQLViewAttribute(ad.getLocalName(), ad.getType().getBinding()); String attName = ad.getName().getLocalPart(); attributes.add(at); if (ad instanceof GeometryDescriptor) { GeometryDescriptor gd = (GeometryDescriptor) ad; if(gd.getUserData().get(JDBCDataStore.JDBC_NATIVE_SRID) != null) { at.setSrid((Integer) gd.getUserData().get(JDBCDataStore.JDBC_NATIVE_SRID)); } else if(gd.getCoordinateReferenceSystem() != null) { try { at.setSrid(CRS.lookupEpsgCode(gd.getCoordinateReferenceSystem(), false)); } catch(Exception e) { // it is ok, we're just trying to facilitate the user's life here } } if(vt != null && vt.getGeometries().contains(attName)) { at.setSrid(vt.getNativeSrid(attName)); at.setType(vt.getGeometryType(attName)); } } if(vt != null && vt.getPrimaryKeyColumns() != null && vt.getPrimaryKeyColumns().contains(attName)) { at.setPk(true); } } }
void setFeatureType(SimpleFeatureType ft, VirtualTable vt) { attributes.clear(); for (AttributeDescriptor ad : ft.getAttributeDescriptors()) { SQLViewAttribute at = new SQLViewAttribute(ad.getLocalName(), ad.getType().getBinding()); String attName = ad.getName().getLocalPart(); attributes.add(at); if (ad instanceof GeometryDescriptor) { GeometryDescriptor gd = (GeometryDescriptor) ad; if (gd.getUserData().get(JDBCDataStore.JDBC_NATIVE_SRID) != null) { at.setSrid((Integer) gd.getUserData().get(JDBCDataStore.JDBC_NATIVE_SRID)); } else if (gd.getCoordinateReferenceSystem() != null) { try { at.setSrid(CRS.lookupEpsgCode(gd.getCoordinateReferenceSystem(), false)); } catch (Exception e) { // it is ok, we're just trying to facilitate the user's life here } } if (vt != null && vt.getGeometries().contains(attName)) { at.setSrid(vt.getNativeSrid(attName)); at.setType(vt.getGeometryType(attName)); } } if (vt != null && vt.getPrimaryKeyColumns() != null && vt.getPrimaryKeyColumns().contains(attName)) { at.setPk(true); } } }