Documentation
¶
Index ¶
- type OrganizationSearch
- func (s *OrganizationSearch) IsReady(ctx context.Context) error
- func (s *OrganizationSearch) QueryOrganizations(ctx context.Context, criteria model.OrganizationSearchCriteria) (*model.Organization, error)
- func (s *OrganizationSearch) SuggestOrganizations(ctx context.Context, criteria model.OrganizationSuggestionCriteria) (*model.OrganizationSuggestionsResult, error)
- type OrganizationSearcher
- type ResourceSearch
- func (s *ResourceSearch) BuildCountMessage(ctx context.Context, principal string, result *model.CountResult, ...) []byte
- func (s *ResourceSearch) BuildMessage(ctx context.Context, principal string, result *model.SearchResult) []byte
- func (s *ResourceSearch) CheckAccess(ctx context.Context, principal string, resourceList []model.Resource, ...) ([]model.Resource, error)
- func (s *ResourceSearch) CheckCountAccess(ctx context.Context, principal string, result *model.CountResult, ...) (uint64, error)
- func (s *ResourceSearch) IsReady(ctx context.Context) error
- func (s *ResourceSearch) QueryResources(ctx context.Context, criteria model.SearchCriteria) (*model.SearchResult, error)
- func (s *ResourceSearch) QueryResourcesCount(ctx context.Context, publicCountCriteria model.SearchCriteria, ...) (*model.CountResult, error)
- type ResourceSearcher
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OrganizationSearch ¶
type OrganizationSearch struct {
// contains filtered or unexported fields
}
OrganizationSearch handles organization-related business operations It depends on abstractions (interfaces) rather than concrete implementations
func (*OrganizationSearch) IsReady ¶
func (s *OrganizationSearch) IsReady(ctx context.Context) error
func (*OrganizationSearch) QueryOrganizations ¶
func (s *OrganizationSearch) QueryOrganizations(ctx context.Context, criteria model.OrganizationSearchCriteria) (*model.Organization, error)
QueryOrganizations performs organization search with business logic validation
func (*OrganizationSearch) SuggestOrganizations ¶ added in v0.4.1
func (s *OrganizationSearch) SuggestOrganizations(ctx context.Context, criteria model.OrganizationSuggestionCriteria) (*model.OrganizationSuggestionsResult, error)
SuggestOrganizations performs organization suggestions with business logic validation
type OrganizationSearcher ¶
type OrganizationSearcher interface {
// QueryOrganizations searches for organizations based on the provided criteria
QueryOrganizations(ctx context.Context, criteria model.OrganizationSearchCriteria) (*model.Organization, error)
// SuggestOrganizations returns organization suggestions for typeahead search
SuggestOrganizations(ctx context.Context, criteria model.OrganizationSuggestionCriteria) (*model.OrganizationSuggestionsResult, error)
// IsReady checks if the search service is ready
IsReady(ctx context.Context) error
}
OrganizationSearcher defines the interface for organization search operations This abstraction allows different search implementations (OpenSearch, etc.) without the domain layer knowing about specific implementations
func NewOrganizationSearch ¶
func NewOrganizationSearch(organizationSearcher port.OrganizationSearcher) OrganizationSearcher
NewOrganizationSearch creates a new OrganizationSearch instance
type ResourceSearch ¶
type ResourceSearch struct {
// contains filtered or unexported fields
}
ResourceSearch handles resource-related business operations It depends on abstractions (interfaces) rather than concrete implementations
func (*ResourceSearch) BuildCountMessage ¶ added in v0.4.5
func (s *ResourceSearch) BuildCountMessage(ctx context.Context, principal string, result *model.CountResult, aggregationCriteria model.SearchCriteria) []byte
func (*ResourceSearch) BuildMessage ¶
func (s *ResourceSearch) BuildMessage(ctx context.Context, principal string, result *model.SearchResult) []byte
func (*ResourceSearch) CheckAccess ¶
func (*ResourceSearch) CheckCountAccess ¶ added in v0.4.5
func (s *ResourceSearch) CheckCountAccess(ctx context.Context, principal string, result *model.CountResult, accessCheckMessage []byte) (uint64, error)
func (*ResourceSearch) QueryResources ¶
func (s *ResourceSearch) QueryResources(ctx context.Context, criteria model.SearchCriteria) (*model.SearchResult, error)
QueryResources performs resource search with business logic validation
func (*ResourceSearch) QueryResourcesCount ¶ added in v0.4.5
func (s *ResourceSearch) QueryResourcesCount( ctx context.Context, publicCountCriteria model.SearchCriteria, aggregationCriteria model.SearchCriteria, ) (*model.CountResult, error)
type ResourceSearcher ¶
type ResourceSearcher interface {
// QueryResources searches for resources based on the provided criteria
QueryResources(ctx context.Context, criteria model.SearchCriteria) (*model.SearchResult, error)
// QueryResourcesCount searches for resources based on the provided criteria
QueryResourcesCount(ctx context.Context, countCriteria model.SearchCriteria, aggregationCriteria model.SearchCriteria) (*model.CountResult, error)
// IsReady checks if the search service is ready
IsReady(ctx context.Context) error
}
ResourceSearcher defines the interface for resource search operations This abstraction allows different search implementations (OpenSearch, etc.) without the domain layer knowing about specific implementations
func NewResourceSearch ¶
func NewResourceSearch(resourceSearcher port.ResourceSearcher, accessChecker port.AccessControlChecker, resourceFilter port.ResourceFilter) ResourceSearcher
NewResourceSearch creates a new ResourceSearch instance