List<InsertElementType> inserts = tx.getInsert(); @SuppressWarnings("unchecked") List<UpdateElementType> updates = tx.getUpdate();
HttpServletRequest request=...; org.geotools.xml.parser.Parser parser = new Parser(new org.geotools.wfs.v1_1.WFSConfigration()); TransactionType tt = (TransactionType) parser.parse(request.getReader()); InsertElementType insert1 = (InsertElementType) tt.getInsert().get(0);
@Override public void setElements(List<TransactionElement> elements) { TransactionType tx = (TransactionType) adaptee; tx.getInsert().clear(); tx.getDelete().clear(); tx.getUpdate().clear(); for (TransactionElement element : elements) { if (element instanceof Insert) { tx.getInsert().add(((Insert) element).getAdaptee()); } else if (element instanceof Update) { tx.getUpdate().add(((Update) element).getAdaptee()); } else if (element instanceof Delete) { tx.getDelete().add(((Delete) element).getAdaptee()); } // no replace in wfs 1.1, cannot be there } }
transaction.getInsert().add(cv); } else if (cv instanceof UpdateElementType) { transaction.getUpdate().add(cv);
List<InsertElementType> inserts = tx.getInsert(); @SuppressWarnings("unchecked") List<UpdateElementType> updates = tx.getUpdate();
transaction.getInsert().add(cv); } else if (cv instanceof UpdateElementType) { transaction.getUpdate().add(cv);
transaction.getInsert().add(insert);
@Test public void testWFSTransactionInsert() throws Exception { TransactionType t = WfsFactory.eINSTANCE.createTransactionType(); InsertElementType ie = WfsFactory.eINSTANCE.createInsertElementType(); t.getInsert().add(ie); //ie.setSrsName(new URI("epsg:4326")); BoundingBox expected = new ReferencedEnvelope(53.73,40, -60,-95.1193,CRS.decode("EPSG:4326")); SimpleFeatureType ft = createNiceMock(SimpleFeatureType.class); expect(ft.getTypeName()).andReturn("acme:foo").anyTimes(); replay(ft); SimpleFeature f = createNiceMock(SimpleFeature.class); expect(f.getBounds()).andReturn(expected).anyTimes(); expect(f.getType()).andReturn(ft).anyTimes(); replay(f); ie.getFeature().add(f); Operation op = op("Transaction", "WFS", "1.1.0", t); callback.operationDispatched(new Request(), op); assertEquals("acme:foo", data.getResources().get(0)); // xMin,yMin -95.1193,40 : xMax,yMax -60,53.73 BBoxAsserts.assertEqualsBbox(expected, data.getBbox(), 0.01); }
@Test public void testWFSTransactionInsert() throws Exception { TransactionType t = WfsFactory.eINSTANCE.createTransactionType(); InsertElementType ie = WfsFactory.eINSTANCE.createInsertElementType(); t.getInsert().add(ie); // ie.setSrsName(new URI("epsg:4326")); BoundingBox expected = new ReferencedEnvelope(53.73, 40, -60, -95.1193, CRS.decode("EPSG:4326")); SimpleFeatureType ft = createNiceMock(SimpleFeatureType.class); expect(ft.getTypeName()).andReturn("acme:foo").anyTimes(); replay(ft); SimpleFeature f = createNiceMock(SimpleFeature.class); expect(f.getBounds()).andReturn(expected).anyTimes(); expect(f.getType()).andReturn(ft).anyTimes(); replay(f); ie.getFeature().add(f); Operation op = op("Transaction", "WFS", "1.1.0", t); callback.operationDispatched(new Request(), op); assertEquals("acme:foo", data.getResources().get(0)); // xMin,yMin -95.1193,40 : xMax,yMax -60,53.73 BBoxAsserts.assertEqualsBbox(expected, data.getBbox(), 0.01); }
InsertElementType insert = (InsertElementType) obj.getInsert().get(0); SimpleFeature feature = (SimpleFeature) insert.getFeature().get(0); Map<?, ?> attr = (Map<?, ?>) feature.getAttribute("descr");
tx.getInsert().add(Insert.WFS11.unadapt((Insert) te));