Skip to content
Open
Show file tree
Hide file tree
Changes from all 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