Class MongoComplexDataSource

  • All Implemented Interfaces:
    CustomSourceDataStore

    public final class MongoComplexDataSource
    extends Object
    implements CustomSourceDataStore
    Class that builds an App-Schema iterator ready to be used with MongoDB. Data coming from MongoDB is assumed to be always normalized, when using MongoDB with App-Schema we cannot chain multiple collections together.
    • Constructor Detail

      • MongoComplexDataSource

        public MongoComplexDataSource()
    • Method Detail

      • buildDataStore

        public DataAccess<? extends FeatureType,​? extends Feature> buildDataStore​(SourceDataStore dataStoreConfig,
                                                                                        AppSchemaDataAccessDTO appSchemaConfig)
        Description copied from interface: CustomSourceDataStore
        Builds a data store based on the provided App-Schema data store configuration. If the extension is NOT capable of building a data store based on the provided configuration NULL should be returned.
        Specified by:
        buildDataStore in interface CustomSourceDataStore
        Parameters:
        dataStoreConfig - App-Schema data store configuration
        appSchemaConfig - App-Schema full configuration
        Returns:
        a data store build based on the provided configuration or NULL
      • configXmlDigesterDataSources

        public void configXmlDigesterDataSources​(Digester digester)
        Description copied from interface: CustomSourceDataStore
        Allows a data store to provide its own configuration to the XML parser \ digester for data sources.
        Specified by:
        configXmlDigesterDataSources in interface CustomSourceDataStore
        Parameters:
        digester - XML parser \ digester
      • configXmlDigesterAttributesMappings

        public void configXmlDigesterAttributesMappings​(Digester digester)
        Description copied from interface: CustomSourceDataStore
        Allows a data store to provide its own configuration to the XML parser \ digester for attributes mappings.
        Specified by:
        configXmlDigesterAttributesMappings in interface CustomSourceDataStore
        Parameters:
        digester - XML parser \ digester
      • buildIterator

        public DataAccessMappingFeatureIterator buildIterator​(AppSchemaDataAccess store,
                                                              FeatureTypeMapping featureTypeMapping,
                                                              Query query,
                                                              Transaction transaction)
        Description copied from interface: CustomSourceDataStore
        Allows a data store to build its own iterator that will be used by App-Schema core to retrieve the necessary attributes from the data store to build the mapped feature types. Stores can also if need change the current App-Schema query.
        Specified by:
        buildIterator in interface CustomSourceDataStore
        Parameters:
        store - the data store from where App-Schema will retrieve the necessary values
        featureTypeMapping - the feature typ mapping that is being build by App-Schema core
        query - the query that will \ should be submitted to the data store
        transaction - the current transaction context
        Returns:
        a custom iterator or NULL