Module pygw.geotools.simple_feature_type_builder
Source code
#
# Copyright (c) 2013-2022 Contributors to the Eclipse Foundation
#
# See the NOTICE file distributed with this work for additional information regarding copyright
# ownership. All rights reserved. This program and the accompanying materials are made available
# under the terms of the Apache License, Version 2.0 which accompanies this distribution and is
# available at http://www.apache.org/licenses/LICENSE-2.0.txt
# ===============================================================================================
from pygw.config import java_pkg
from pygw.base import GeoWaveObject
from .simple_feature_type import SimpleFeatureType
from .attribute_descriptor import AttributeDescriptor
class SimpleFeatureTypeBuilder(GeoWaveObject):
"""
Builds `pygw.geotools.simple_feature_type.SimpleFeatureType` instances.
"""
def __init__(self):
self.attributes = []
super().__init__(java_pkg.org.geotools.feature.simple.SimpleFeatureTypeBuilder())
def set_name(self, name):
"""
Sets the name of the feature type.
Args:
name (str): The name to use.
Returns:
This feature type builder.
"""
self._java_ref.setName(name)
return self
def set_namespace_uri(self, namespace_uri):
"""
Sets the namespace URI of the feature type.
Args:
namespace_uri (str): The namespace URI to use.
Returns:
This feature type builder.
"""
self._java_ref.setNamespaceURI(namespace_uri)
return self
def set_srs(self, srs):
"""
Sets the spatial reference system of the feature type.
Args:
srs (str): The spatial reference system to use.
Returns:
This feature type builder.
"""
self._java_ref.setSRS(srs)
return self
def add(self, attribute_descriptor):
"""
Adds an attribute to the feature type.
Args:
attribute_descriptor (pygw.geotools.attribute_descriptor.AttributeDescriptor): The attribute to add.
Returns:
This feature type builder.
"""
if isinstance(attribute_descriptor, AttributeDescriptor):
self.attributes.append(attribute_descriptor)
self._java_ref.add(attribute_descriptor._java_ref)
return self
else:
raise ValueError("attribute_descriptor should be of type AttributeDescriptor")
def build_feature_type(self):
"""
Builds the configured feature type.
Returns:
A `pygw.geotools.simple_feature_type.SimpleFeatureType` with the given configuration.
"""
return SimpleFeatureType(self._java_ref.buildFeatureType(), self.attributes)
Classes
class SimpleFeatureTypeBuilder
-
Builds
SimpleFeatureType
instances.Source code
class SimpleFeatureTypeBuilder(GeoWaveObject): """ Builds `pygw.geotools.simple_feature_type.SimpleFeatureType` instances. """ def __init__(self): self.attributes = [] super().__init__(java_pkg.org.geotools.feature.simple.SimpleFeatureTypeBuilder()) def set_name(self, name): """ Sets the name of the feature type. Args: name (str): The name to use. Returns: This feature type builder. """ self._java_ref.setName(name) return self def set_namespace_uri(self, namespace_uri): """ Sets the namespace URI of the feature type. Args: namespace_uri (str): The namespace URI to use. Returns: This feature type builder. """ self._java_ref.setNamespaceURI(namespace_uri) return self def set_srs(self, srs): """ Sets the spatial reference system of the feature type. Args: srs (str): The spatial reference system to use. Returns: This feature type builder. """ self._java_ref.setSRS(srs) return self def add(self, attribute_descriptor): """ Adds an attribute to the feature type. Args: attribute_descriptor (pygw.geotools.attribute_descriptor.AttributeDescriptor): The attribute to add. Returns: This feature type builder. """ if isinstance(attribute_descriptor, AttributeDescriptor): self.attributes.append(attribute_descriptor) self._java_ref.add(attribute_descriptor._java_ref) return self else: raise ValueError("attribute_descriptor should be of type AttributeDescriptor") def build_feature_type(self): """ Builds the configured feature type. Returns: A `pygw.geotools.simple_feature_type.SimpleFeatureType` with the given configuration. """ return SimpleFeatureType(self._java_ref.buildFeatureType(), self.attributes)
Ancestors
Methods
def add(self, attribute_descriptor)
-
Adds an attribute to the feature type.
Args
attribute_descriptor
:AttributeDescriptor
- The attribute to add.
Returns
This feature type builder.
Source code
def add(self, attribute_descriptor): """ Adds an attribute to the feature type. Args: attribute_descriptor (pygw.geotools.attribute_descriptor.AttributeDescriptor): The attribute to add. Returns: This feature type builder. """ if isinstance(attribute_descriptor, AttributeDescriptor): self.attributes.append(attribute_descriptor) self._java_ref.add(attribute_descriptor._java_ref) return self else: raise ValueError("attribute_descriptor should be of type AttributeDescriptor")
def build_feature_type(self)
-
Builds the configured feature type.
Returns
A
SimpleFeatureType
with the given configuration.Source code
def build_feature_type(self): """ Builds the configured feature type. Returns: A `pygw.geotools.simple_feature_type.SimpleFeatureType` with the given configuration. """ return SimpleFeatureType(self._java_ref.buildFeatureType(), self.attributes)
def set_name(self, name)
-
Sets the name of the feature type.
Args
name
:str
- The name to use.
Returns
This feature type builder.
Source code
def set_name(self, name): """ Sets the name of the feature type. Args: name (str): The name to use. Returns: This feature type builder. """ self._java_ref.setName(name) return self
def set_namespace_uri(self, namespace_uri)
-
Sets the namespace URI of the feature type.
Args
namespace_uri
:str
- The namespace URI to use.
Returns
This feature type builder.
Source code
def set_namespace_uri(self, namespace_uri): """ Sets the namespace URI of the feature type. Args: namespace_uri (str): The namespace URI to use. Returns: This feature type builder. """ self._java_ref.setNamespaceURI(namespace_uri) return self
def set_srs(self, srs)
-
Sets the spatial reference system of the feature type.
Args
srs
:str
- The spatial reference system to use.
Returns
This feature type builder.
Source code
def set_srs(self, srs): """ Sets the spatial reference system of the feature type. Args: srs (str): The spatial reference system to use. Returns: This feature type builder. """ self._java_ref.setSRS(srs) return self
Inherited members