#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# default implementations

org.apache.atlas.odf.core.controlcenter.AnalysisRequestTrackerStore=org.apache.atlas.odf.core.controlcenter.DefaultStatusQueueStore
org.apache.atlas.odf.core.controlcenter.ThreadManager=org.apache.atlas.odf.core.controlcenter.DefaultThreadManager
org.apache.atlas.odf.api.metadata.MetadataStore=org.apache.atlas.odf.core.metadata.DefaultMetadataStore
org.apache.atlas.odf.api.annotation.AnnotationStore=org.apache.atlas.odf.core.controlcenter.DefaultStatusQueueStore
org.apache.atlas.odf.core.controlcenter.DiscoveryServiceMessageStore=org.apache.atlas.odf.core.controlcenter.DefaultStatusQueueStore
org.apache.atlas.odf.api.metadata.importer.JDBCMetadataImporter=org.apache.atlas.odf.core.metadata.JDBCMetadataImporterImpl
org.apache.atlas.odf.core.connectivity.DataSetRetriever=org.apache.atlas.odf.core.connectivity.DataSetRetrieverImpl
org.apache.atlas.odf.api.spark.SparkServiceExecutor=org.apache.atlas.odf.core.spark.SparkServiceExecutorImpl
org.apache.atlas.odf.core.Environment=org.apache.atlas.odf.core.StandaloneEnvironment
org.apache.atlas.odf.api.analysis.AnalysisManager=org.apache.atlas.odf.core.analysis.AnalysisManagerImpl
org.apache.atlas.odf.api.engine.EngineManager=org.apache.atlas.odf.core.engine.EngineManagerImpl
org.apache.atlas.odf.api.discoveryservice.DiscoveryServiceManager=org.apache.atlas.odf.core.discoveryservice.DiscoveryServiceManagerImpl
org.apache.atlas.odf.api.settings.SettingsManager=org.apache.atlas.odf.core.settings.SettingsManagerImpl
org.apache.atlas.odf.core.messaging.MessageEncryption=org.apache.atlas.odf.core.messaging.DefaultMessageEncryption
org.apache.atlas.odf.core.controlcenter.TransactionContextExecutor=org.apache.atlas.odf.core.controlcenter.DefaultTransactionContextExecutor
org.apache.atlas.odf.core.notification.NotificationManager=org.apache.atlas.odf.core.notification.DefaultNotificationManager
org.apache.atlas.odf.core.store.ODFConfigurationStorage=org.apache.atlas.odf.core.store.DefaultConfigurationStorage