| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You 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. |
| * |
| */ |
| |
| package org.apache.skywalking.oap.server.core.storage; |
| |
| import org.apache.skywalking.oap.server.core.storage.cache.INetworkAddressAliasDAO; |
| import org.apache.skywalking.oap.server.core.storage.management.UIMenuManagementDAO; |
| import org.apache.skywalking.oap.server.core.storage.management.UITemplateManagementDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.continuous.IContinuousProfilingPolicyDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.ebpf.IServiceLabelDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.trace.IProfileTaskLogQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.trace.IProfileTaskQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.trace.IProfileThreadSnapshotQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IAggregationQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IAlarmQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IBrowserLogQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.ebpf.IEBPFProfilingDataDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.ebpf.IEBPFProfilingScheduleDAO; |
| import org.apache.skywalking.oap.server.core.storage.profiling.ebpf.IEBPFProfilingTaskDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IEventQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IHierarchyQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.ILogQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IMetadataQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IMetricsQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.ISpanAttachedEventQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.ITagAutoCompleteQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IRecordsQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.ITopologyQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.ITraceQueryDAO; |
| import org.apache.skywalking.oap.server.core.storage.query.IZipkinQueryDAO; |
| import org.apache.skywalking.oap.server.library.module.ModuleDefine; |
| |
| /** |
| * StorageModule provides the capabilities(services) to interact with the database. With different databases, this |
| * module could have different providers, such as currently, H2, MySQL, ES, TiDB. |
| */ |
| public class StorageModule extends ModuleDefine { |
| |
| public static final String NAME = "storage"; |
| |
| public StorageModule() { |
| super(NAME); |
| } |
| |
| @Override |
| public Class[] services() { |
| return new Class[] { |
| StorageBuilderFactory.class, |
| IBatchDAO.class, |
| StorageDAO.class, |
| IHistoryDeleteDAO.class, |
| INetworkAddressAliasDAO.class, |
| ITopologyQueryDAO.class, |
| IMetricsQueryDAO.class, |
| ITraceQueryDAO.class, |
| IMetadataQueryDAO.class, |
| IAggregationQueryDAO.class, |
| IAlarmQueryDAO.class, |
| IRecordsQueryDAO.class, |
| ILogQueryDAO.class, |
| IProfileTaskQueryDAO.class, |
| IProfileTaskLogQueryDAO.class, |
| IProfileThreadSnapshotQueryDAO.class, |
| UITemplateManagementDAO.class, |
| UIMenuManagementDAO.class, |
| IBrowserLogQueryDAO.class, |
| IEventQueryDAO.class, |
| IEBPFProfilingTaskDAO.class, |
| IEBPFProfilingScheduleDAO.class, |
| IEBPFProfilingDataDAO.class, |
| IContinuousProfilingPolicyDAO.class, |
| IServiceLabelDAO.class, |
| ITagAutoCompleteQueryDAO.class, |
| IZipkinQueryDAO.class, |
| ISpanAttachedEventQueryDAO.class, |
| IHierarchyQueryDAO.class |
| }; |
| } |
| } |