首次提交
This commit is contained in:
59
lib/EasyDartModule.dart
Normal file
59
lib/EasyDartModule.dart
Normal file
@@ -0,0 +1,59 @@
|
||||
library EasyDartModule;
|
||||
|
||||
import 'package:EasyDartModule/base/database/DataBase.dart';
|
||||
import 'package:EasyDartModule/base/database/impl/MongoDb.dart';
|
||||
import 'package:EasyDartModule/base/discovery/Discovery.dart';
|
||||
import 'package:EasyDartModule/base/discovery/impl/NacosDiscovery.dart';
|
||||
import 'package:EasyDartModule/base/http/TraceDio.dart';
|
||||
import 'package:EasyDartModule/base/logger/Logger.dart';
|
||||
import 'package:EasyDartModule/base/logger/impl/LokiLogger.dart';
|
||||
import 'package:EasyDartModule/base/mqtt/mqtt.dart';
|
||||
import 'package:EasyDartModule/base/storage/Storage.dart';
|
||||
import 'package:EasyDartModule/base/storage/impl/MinIoStorage.dart';
|
||||
import 'package:EasyDartModule/base/webserver/WebServer.dart';
|
||||
import 'package:EasyDartModule/base/webserver/impl/ShelfWebServer.dart';
|
||||
|
||||
export 'package:shelf/shelf.dart';
|
||||
export 'package:mongo_dart/mongo_dart.dart';
|
||||
|
||||
class EasyDartModule {
|
||||
static Discovery get discovery => Discovery.getInstance();
|
||||
static DataBase get dataBase => DataBase.getInstance();
|
||||
static WebServer get webServer => WebServer.getInstance();
|
||||
static Logger get logger => Logger.getInstance();
|
||||
static TraceDio get dio => TraceDio.getInstance();
|
||||
static Mqtt get mqtt => Mqtt.getInstance();
|
||||
static Storage get storage => Storage.getInstance();
|
||||
static bool init(
|
||||
{DiscoveryConfig? discoveryConfig,
|
||||
DataBaseConfig? dataBaseConfig,
|
||||
LoggerConfig? loggerConfig,
|
||||
MqttConfig? mqttConfig,
|
||||
StorageConfig? storageConfig}) {
|
||||
if (discoveryConfig != null) {
|
||||
//nacos注册配置中心
|
||||
Discovery.setInstance(NacosDiscovery(discoveryConfig));
|
||||
}
|
||||
if (dataBaseConfig != null) {
|
||||
//mongo数据库
|
||||
DataBase.setInstance(MongoDb(dataBaseConfig));
|
||||
}
|
||||
if (mqttConfig != null) {
|
||||
//mqtt
|
||||
Mqtt.setInstance(Mqtt(mqttConfig));
|
||||
}
|
||||
if (storageConfig != null) {
|
||||
//s3存储
|
||||
Storage.setInstance(MinioStorage(storageConfig));
|
||||
}
|
||||
if (loggerConfig != null) {
|
||||
//初始化日志
|
||||
Logger.setInstance(LokiLogger(loggerConfig));
|
||||
//web服务器
|
||||
WebServer.setInstance(ShelfWebServer(logger));
|
||||
//Dio组件
|
||||
TraceDio.setInstance(TraceDio(logger));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user