github.com/voedger/voedger@v0.0.0-20240520144910-273e84102129/pkg/apps/sys/blobberapp/provide.go (about) 1 /* 2 * Copyright (c) 2022-present unTill Pro, Ltd. 3 */ 4 5 package blobberapp 6 7 import ( 8 "github.com/voedger/voedger/pkg/appparts" 9 "github.com/voedger/voedger/pkg/apps" 10 "github.com/voedger/voedger/pkg/extensionpoints" 11 "github.com/voedger/voedger/pkg/istructs" 12 "github.com/voedger/voedger/pkg/istructsmem" 13 "github.com/voedger/voedger/pkg/parser" 14 "github.com/voedger/voedger/pkg/sys" 15 "github.com/voedger/voedger/pkg/sys/smtp" 16 ) 17 18 func Provide() apps.AppBuilder { 19 return func(apis apps.APIs, cfg *istructsmem.AppConfigType, ep extensionpoints.IExtensionPoint) apps.BuiltInAppDef { 20 sysPackageFS := sys.Provide(cfg, smtp.Cfg{}, ep, nil, apis.TimeFunc, apis.ITokens, apis.IFederation, apis.IAppStructsProvider, apis.IAppTokensFactory, 21 nil, apis.IAppStorageProvider) // need to generate AppWorkspaces only 22 blobberAppPackageFS := parser.PackageFS{ 23 Path: BlobberAppFQN, 24 FS: blobberSchemaFS, 25 } 26 return apps.BuiltInAppDef{ 27 AppQName: istructs.AppQName_sys_blobber, 28 Packages: []parser.PackageFS{sysPackageFS, blobberAppPackageFS}, 29 AppDeploymentDescriptor: appparts.AppDeploymentDescriptor{ 30 NumParts: DefDeploymentPartsCount, 31 EnginePoolSize: DefDeploymentEnginePoolSize, 32 }, 33 } 34 } 35 }