public AttributeTypeBuilder binding(Class<?> binding) { setBinding(binding); return this; }
public static AttributeDescriptor[] createType1Choices() { AttributeTypeBuilder ab = new AttributeTypeBuilder(); AttributeDescriptor[] choices = new AttributeDescriptor[3]; ab.setBinding(Byte.class); choices[0] = ab.buildDescriptor("testByte"); ab.setBinding(Double.class); choices[1] = ab.buildDescriptor("testDouble"); ab.setBinding(String.class); choices[2] = ab.buildDescriptor("testString"); return choices; }
/** * Adds a new geometric attribute w/ provided name, class, and coordinate reference system. * * <p>The <tt>crs</tt> parameter may be <code>null</code>. * * @param name The name of the attribute. * @param binding The class that the attribute is bound to. * @param crs The crs of of the geometry, may be <code>null</code>. */ public void add(String name, Class<?> binding, CoordinateReferenceSystem crs) { attributeBuilder.setBinding(binding); attributeBuilder.setName(name); attributeBuilder.setCRS(crs); GeometryType type = attributeBuilder.buildGeometryType(); GeometryDescriptor descriptor = attributeBuilder.buildDescriptor(name, type); attributes().add(descriptor); }
public static AttributeDescriptor getChoiceAttrType2() { AttributeTypeBuilder ab = new AttributeTypeBuilder(); AttributeDescriptor[] choices = new AttributeDescriptor[2]; ab.setBinding(String.class); choices[0] = ab.buildDescriptor("testString"); ab.setBinding(Integer.class); choices[1] = ab.buildDescriptor("testInt"); return createChoiceAttrType("choiceTest2", choices); }
static AttributeDescriptor newAtt(String name, Class c) { AttributeTypeBuilder ab = new AttributeTypeBuilder(); ab.setBinding(c); return ab.buildDescriptor(name); }
attributeBuilder.setBinding(binding); attributeBuilder.setName(name);
/** * Create a fake property to store arbitrary text in a complex type. * * <p>Passed in value is converted to a string and then stored in the special <code> * simpleContent</code> attribute. * * @param type * @param value * @return */ Attribute buildTextContent(AttributeType type, Object value) { AttributeTypeBuilder atb = new AttributeTypeBuilder(); atb.setName(ComplexFeatureConstants.SIMPLE_CONTENT.getLocalPart()); atb.setBinding(String.class); AttributeType textContentType = atb.buildType(); return buildSimpleContentInternal(textContentType, value); }
static AttributeDescriptor newAtt(String name, Class c, boolean nillable) { AttributeTypeBuilder ab = new AttributeTypeBuilder(); ab.setNillable(nillable); ab.setBinding(c); return ab.buildDescriptor(name); }
ab.setBinding(computedBinding); ab.setName(name); if (computedCRS != null) {
for (PrimaryKeyColumn col : joinKey.getColumns()) { query.getQueryJoins().get(i).addId(col.getName()); ab.setBinding(String.class); builder.add( ab.buildDescriptor( ab.setBinding(String.class); builder.add( ab.buildDescriptor( ab.setBinding(String.class); builder.add(ab.buildDescriptor(PRIMARY_KEY + "_" + j, ab.buildType()));
b.setBinding(typeClass); b.setName(attName); b.setNillable(isNilable);
builder.setBinding(Date.class); hack.put(new NameImpl(XS.DATETIME), builder.buildType());
ab.setBinding(binding); ab.setName(name); if (crs != null) { ab.setBinding(computedBinding); ab.setName(name); if (computedCRS != null) {
AttributeTypeBuilder build = new AttributeTypeBuilder(); build.setName(eg.getName()); build.setBinding(type); build.setNillable(nillable); build.setDefaultValue(defaultValue); build.setBinding(type); build.setNillable(nillable); return build.buildDescriptor(eg.getName()); build.setBinding(type); build.setNillable(nillable); return build.buildDescriptor(eg.getName());
@Test public void testCustomLengthExpressions() { AttributeTypeBuilder builder = new AttributeTypeBuilder(); FilterFactory ff = CommonFactoryFinder.getFilterFactory(null); Function length = ff.function("LengthFunction", new Expression[] {ff.property(".")}); // strict less builder.addRestriction(ff.less(length, ff.literal(20))); builder.setBinding(String.class); AttributeDescriptor attribute = builder.buildDescriptor("attribute"); assertEquals(19, FeatureTypes.getFieldLength(attribute)); // flip expression builder.addRestriction(ff.greater(ff.literal(20), length)); builder.setBinding(String.class); attribute = builder.buildDescriptor("attribute"); assertEquals(19, FeatureTypes.getFieldLength(attribute)); }
builder.setName(schema.getName().getLocalPart() + "_" + descriptor.getName()); builder.setNillable(descriptor.isNillable()); builder.setBinding(descriptor.getType().getBinding()); builder.setMinOccurs(descriptor.getMinOccurs()); builder.setMaxOccurs(descriptor.getMaxOccurs());
@Override protected SimpleFeatureType buildTargetFeatureType() { // create schema SimpleFeatureTypeBuilder tb = new SimpleFeatureTypeBuilder(); for (AttributeDescriptor descriptor : delegate.getSchema().getAttributeDescriptors()) { if (!(descriptor.getType() instanceof GeometryTypeImpl) || (!delegate.getSchema().getGeometryDescriptor().equals(descriptor))) { tb.add(descriptor); } else { AttributeTypeBuilder builder = new AttributeTypeBuilder(); builder.setBinding(MultiPolygon.class); AttributeDescriptor attributeDescriptor = builder.buildDescriptor(descriptor.getLocalName(), builder.buildType()); tb.add(attributeDescriptor); if (tb.getDefaultGeometry() == null) { tb.setDefaultGeometry(descriptor.getLocalName()); } } } tb.setDescription(delegate.getSchema().getDescription()); tb.setCRS(delegate.getSchema().getCoordinateReferenceSystem()); tb.setName(delegate.getSchema().getName()); return tb.buildFeatureType(); }
static AttributeDescriptor getIntersectionType( SimpleFeatureCollection first, SimpleFeatureCollection second) { Class firstGeomType = first.getSchema().getGeometryDescriptor().getType().getBinding(); Class secondGeomType = second.getSchema().getGeometryDescriptor().getType().getBinding(); // figure out the output geometry type Class binding; if (isGeometryTypeIn(secondGeomType, Point.class)) { binding = Point.class; } else if (isGeometryTypeIn(secondGeomType, MultiPoint.class)) { binding = MultiPoint.class; } else if (isGeometryTypeIn(secondGeomType, LineString.class, MultiLineString.class)) { binding = MultiLineString.class; } else if (isGeometryTypeIn(secondGeomType, Polygon.class, MultiPolygon.class)) { if (isGeometryTypeIn(firstGeomType, Polygon.class, MultiPolygon.class)) { binding = MultiPolygon.class; } else { binding = MultiLineString.class; } } else { // we can't be more precise than this binding = Geometry.class; } AttributeTypeBuilder builder = new AttributeTypeBuilder(); builder.setName("the_geom"); builder.setBinding(binding); builder.setCRS(first.features().next().getFeatureType().getCoordinateReferenceSystem()); AttributeDescriptor descriptor = builder.buildDescriptor("the_geom"); return descriptor; }
@Override protected void connect() throws Exception { super.connect(); // we need to use the type builder because the pk has min occurs = 1 on Oracle AttributeTypeBuilder atb = new AttributeTypeBuilder(); atb.setMinOccurs(isPkNillable() ? 0 : 1); atb.setMaxOccurs(1); atb.setNillable(isPkNillable()); atb.setName(FID); atb.setBinding(Integer.class); AttributeDescriptor fidDescriptor = atb.buildDescriptor(FID); SimpleFeatureTypeBuilder tb = new SimpleFeatureTypeBuilder(); tb.setNamespaceURI(dataStore.getNamespaceURI()); tb.setName(LAKESVIEW); tb.add(fidDescriptor); tb.add(ID, Integer.class); tb.add(GEOM, Polygon.class, (CoordinateReferenceSystem) null); tb.add(NAME, String.class); lakeViewSchema = tb.buildFeatureType(); lakeViewPkSchema = tb.retype(lakeViewSchema, new String[] {ID, GEOM, NAME}); }
builder.setName(descriptor.getLocalName()); builder.setNillable(descriptor.isNillable()); builder.setBinding(String.class); builder.setMinOccurs(descriptor.getMinOccurs()); builder.setMaxOccurs(descriptor.getMaxOccurs());