Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterHandlers ¶
Types ¶
type CreatePolicyRequest ¶
type CreatePolicyRequest struct {
Identifier string `json:"identifier" bson:"identifier"`
DisplayName string `json:"display_name" bson:"display_name"`
Version string `json:"version" bson:"version"`
Policy string `json:"policy" bson:"policy"`
}
func (CreatePolicyRequest) Validate ¶
func (m CreatePolicyRequest) Validate() error
type Filter ¶
type Filter struct {
Cursor int `json:"cursor" query:"cursor"`
Limit int `json:"limit" query:"limit"`
Name string `json:"name" query:"name"`
}
Pagination filter.
type PatchPolicy ¶
type PatchPolicy struct {
AddedPolicies []mongo_entity.PolicyContent `json:"added_policies,omitempty" bson:"added_policies"`
RemovedPolicies []string `json:"removed_policies,omitempty" bson:"removed_policies"`
}
type PatchPolicyRequest ¶
type PatchPolicyRequest struct {
AddedPolicies []mongo_entity.PolicyContent `json:"added_policies,omitempty" bson:"added_policies"`
RemovedPolicies []string `json:"removed_policies,omitempty" bson:"removed_policies"`
}
type Policy ¶
type Policy struct {
mongo_entity.Policy
}
type Repository ¶
type Repository interface {
Get(ctx context.Context, org_id string, id string) (*mongo_entity.Policy, error)
Create(ctx context.Context, org_id string, policy mongo_entity.Policy) error
Query(ctx context.Context, org_id string) (*[]mongo_entity.Policy, error)
Update(ctx context.Context, org_id string, id string, update_user UpdatePolicy) error
Patch(ctx context.Context, org_id string, id string, patch_user PatchPolicy) error
Delete(ctx context.Context, org_id string, id string) error
CheckPolicyExistById(ctx context.Context, org_id string, id string) (bool, error)
CheckPolicyExistsByIdentifier(ctx context.Context, org_id string, identifier string) (bool, error)
CheckPolicyContentExistsByVersion(ctx context.Context, org_id string, version string) (bool, error)
}
func NewRepository ¶
func NewRepository(mongodb *db.MongoDB) Repository
type Service ¶
type Service interface {
Get(ctx context.Context, org_id string, id string) (Policy, error)
Query(ctx context.Context, org_id string, filter Filter) ([]Policy, error)
Create(ctx context.Context, org_id string, input CreatePolicyRequest) (Policy, error)
Update(ctx context.Context, org_id string, id string, input UpdatePolicyRequest) (Policy, error)
Patch(ctx context.Context, org_id string, id string, input PatchPolicyRequest) (Policy, error)
Delete(ctx context.Context, org_id string, id string) error
}
func NewService ¶
func NewService(repo Repository, logger *zap.Logger) Service
type UpdatePolicy ¶
type UpdatePolicy struct {
DisplayName *string `json:"display_name,omitempty" bson:"display_name"`
ActiveVersion *string `json:"active_version,omitempty" bson:"active_version"`
PolicyContent *UpdatePolicyContent `json:"policy_content,omitempty" bson:"policy_content"`
}
type UpdatePolicyContent ¶
type UpdatePolicyRequest ¶
type UpdatePolicyRequest struct {
DisplayName *string `json:"display_name,omitempty" bson:"display_name"`
ActiveVersion *string `json:"active_version,omitempty" bson:"active_version"`
PolicyContent *UpdatePolicyContent `json:"policy_content,omitempty" bson:"policy_content"`
}
Click to show internal directories.
Click to hide internal directories.