Skip to content
Open
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions cmd/api/src/api/registration/v2.go
Original file line number Diff line number Diff line change
Expand Up @@ -155,9 +155,6 @@ func NewV2API(resources v2.Resources, routerInst *router.Router) {
routerInst.GET("/api/v2/config", resources.GetApplicationConfigurations).RequirePermissions(permissions.AppReadApplicationConfiguration),
routerInst.PUT("/api/v2/config", resources.SetApplicationConfiguration).RequirePermissions(permissions.AppWriteApplicationConfiguration),

routerInst.GET("/api/v2/features", resources.GetFlags).RequirePermissions(permissions.AppReadApplicationConfiguration),
routerInst.PUT("/api/v2/features/{feature_id}/toggle", resources.ToggleFlag).RequirePermissions(permissions.AppWriteApplicationConfiguration),

routerInst.POST("/api/v2/clear-database", resources.HandleDatabaseWipe).RequirePermissions(permissions.WipeDB),

// Asset Groups API
Expand Down
84 changes: 0 additions & 84 deletions cmd/api/src/api/v2/flag.go

This file was deleted.

98 changes: 0 additions & 98 deletions cmd/api/src/api/v2/flag_test.go

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,10 @@ import (
"context"

"github.com/jackc/pgx/v5/pgxpool"
"github.com/specterops/bloodhound/cmd/api/src/api/router"
"github.com/specterops/bloodhound/server/featureflags/internal/appdb"
"github.com/specterops/bloodhound/server/featureflags/internal/handlers"
"github.com/specterops/bloodhound/server/featureflags/internal/routes"
"github.com/specterops/bloodhound/server/featureflags/internal/services"
)

Expand All @@ -33,12 +36,26 @@ const (
FeatureAlerts = services.FeatureAlerts
)

type Service interface {
type FeatureFlagRequestAdapter interface {
IsEnabled(ctx context.Context, key string) (bool, error)
}

// Register wires the feature-flag service to its PostgreSQL store and returns
// the constructed service for use by BHE feature slices.
func Register(pool *pgxpool.Pool) Service {
return services.NewService(appdb.NewStore(pool))
func NewFeatureFlagRequestAdapter(pool *pgxpool.Pool) FeatureFlagRequestAdapter {
var (
store = appdb.NewStore(pool)
svc = services.NewService(store)
handlerSet = handlers.NewHandlersContainer(svc)
)

return handlerSet
}

func Register(routerInst *router.Router, pool *pgxpool.Pool) {
var (
store = appdb.NewStore(pool)
svc = services.NewService(store)
handlerSet = handlers.NewHandlersContainer(svc)
)

routes.Register(routerInst, handlerSet)
}
Loading
Loading