38 |
import org.geotools.data.collection.CollectionDataStore; |
import org.geotools.data.collection.CollectionDataStore; |
39 |
import org.geotools.data.store.EmptyFeatureCollection; |
import org.geotools.data.store.EmptyFeatureCollection; |
40 |
import org.geotools.feature.FeatureCollection; |
import org.geotools.feature.FeatureCollection; |
41 |
|
import org.geotools.feature.NameImpl; |
42 |
import org.geotools.feature.collection.SubFeatureCollection; |
import org.geotools.feature.collection.SubFeatureCollection; |
43 |
import org.geotools.styling.Style; |
import org.geotools.styling.Style; |
44 |
import org.opengis.feature.simple.SimpleFeature; |
import org.opengis.feature.simple.SimpleFeature; |
47 |
import org.opengis.filter.Filter; |
import org.opengis.filter.Filter; |
48 |
|
|
49 |
import schmitzm.geotools.feature.FeatureUtil; |
import schmitzm.geotools.feature.FeatureUtil; |
50 |
import skrueger.AttributeMetadata; |
import skrueger.AttributeMetadataImpl; |
51 |
import skrueger.i8n.Translation; |
import skrueger.i8n.Translation; |
52 |
|
|
53 |
/** |
/** |
66 |
implements StyledFeatureCollectionInterface { |
implements StyledFeatureCollectionInterface { |
67 |
|
|
68 |
/** Holds the meta data for displaying a legend. */ |
/** Holds the meta data for displaying a legend. */ |
69 |
protected AttributeMetadataMap attrMetaData = null; |
protected AttributeMetadataMap<AttributeMetadataImpl> attrMetaData = null; |
70 |
|
|
71 |
/** |
/** |
72 |
* We be filled with a "virtual" {@link FeatureSource} on demand. |
* We be filled with a "virtual" {@link FeatureSource} on demand. |
315 |
*/ |
*/ |
316 |
public static AttributeMetadataMap createDefaultAttributeMetaDataMap( |
public static AttributeMetadataMap createDefaultAttributeMetaDataMap( |
317 |
FeatureCollection<SimpleFeatureType, SimpleFeature> fc) { |
FeatureCollection<SimpleFeatureType, SimpleFeature> fc) { |
318 |
AttributeMetadataMap metaDataMap = new AttributeMetadataMap(); |
AttributeMetadataMap metaDataMap = new AttributeMetadataImplMap(); |
319 |
SimpleFeatureType ftype = fc.getSchema(); |
SimpleFeatureType ftype = fc.getSchema(); |
320 |
for (int i = 0; i < ftype.getAttributeCount(); i++) { |
for (int i = 0; i < ftype.getAttributeCount(); i++) { |
321 |
AttributeDescriptor aDesc = ftype.getAttributeDescriptors().get(i); |
AttributeDescriptor aDesc = ftype.getAttributeDescriptors().get(i); |
322 |
if (aDesc != ftype.getGeometryDescriptor()) |
if (aDesc != ftype.getGeometryDescriptor()) |
323 |
metaDataMap.put(aDesc.getName(), new AttributeMetadata(aDesc.getName(), |
metaDataMap.put(aDesc.getName(), new AttributeMetadataImpl( new NameImpl( aDesc.getName().getNamespaceURI(), aDesc.getName().getLocalPart()), |
324 |
true, // visible |
true, // visible |
325 |
new Translation(aDesc.getLocalName()), // Column name |
new Translation(aDesc.getLocalName()), // Column name |
326 |
new Translation(aDesc.getLocalName()), // description |
new Translation(aDesc.getLocalName()), // description |