package integration import ( "context" userv1 "hyapp.local/api/proto/user/v1" ) // AppRegistryClient keeps tenant discovery behind user-service, the owner of the App registry. type AppRegistryClient struct { client userv1.AppRegistryServiceClient } func NewAppRegistryClient(client userv1.AppRegistryServiceClient) *AppRegistryClient { return &AppRegistryClient{client: client} } func (c *AppRegistryClient) ListEnabledAppCodes(ctx context.Context) ([]string, error) { resp, err := c.client.ListApps(ctx, &userv1.ListAppsRequest{}) if err != nil { return nil, err } appCodes := make([]string, 0, len(resp.GetApps())) for _, app := range resp.GetApps() { if app.GetStatus() == "active" { appCodes = append(appCodes, app.GetAppCode()) } } return appCodes, nil }