cla_groups

package
v0.0.0-...-ec43350 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2024 License: MIT Imports: 36 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Configure

func Configure(api *operations.EasyclaAPI, service Service, v1ProjectService v1Project.Service, projectClaGroupsRepo projects_cla_groups.Repository, eventsService events.Service)

Configure configures the cla group api

func Find

func Find(slice []v1Models.ClaGroup, val string) (int, bool)

Find . . .

func GetProjectDescendants

func GetProjectDescendants(projectSummary []*v2ProjectServiceModels.ProjectSummary) []string

GetProjectDescendants returns all descendants of given projectSummary (salesforce)

Types

type AssociateCLAGroupWithProjectsModel

type AssociateCLAGroupWithProjectsModel struct {
	AuthUser        *auth.User
	CLAGroupID      string
	FoundationSFID  string
	ProjectSFIDList []string
}

AssociateCLAGroupWithProjectsModel to encapsulate the associate request

type EnrollProjectsModel

type EnrollProjectsModel struct {
	AuthUser         *auth.User
	CLAGroupID       string
	FoundationSFID   string
	ProjectSFIDList  []string
	ProjectLevel     bool
	CLAGroupProjects []string
}

EnrollProjectsModel model to encapsulate the enroll projects request

type ProjectNode

type ProjectNode struct {
	Parent   *ProjectNode
	ID       string
	Name     string
	Children []*ProjectNode
}

ProjectNode representing nested projects

func (*ProjectNode) String

func (n *ProjectNode) String() string

type ProjectStack

type ProjectStack []*ProjectNode

func (*ProjectStack) IsEmpty

func (s *ProjectStack) IsEmpty() bool

func (*ProjectStack) Peek

func (s *ProjectStack) Peek() *ProjectNode

func (*ProjectStack) Pop

func (s *ProjectStack) Pop() (ProjectStack, *ProjectNode)

func (*ProjectStack) Push

func (s *ProjectStack) Push(v *ProjectNode)

func (*ProjectStack) Size

func (s *ProjectStack) Size() int

type Service

type Service interface {
	CreateCLAGroup(ctx context.Context, authUser *auth.User, input *models.CreateClaGroupInput, projectManagerLFID string) (*models.ClaGroupSummary, error)
	GetCLAGroup(ctx context.Context, claGroupID string) (*v1Models.ClaGroup, error)
	UpdateCLAGroup(ctx context.Context, authUser *auth.User, claGroupModel *v1Models.ClaGroup, input *models.UpdateClaGroupInput) (*models.ClaGroupSummary, error)
	ListClaGroupsForFoundationOrProject(ctx context.Context, foundationSFID string) (*models.ClaGroupListSummary, error)
	ListAllFoundationClaGroups(ctx context.Context, foundationID *string) (*models.FoundationMappingList, error)
	DeleteCLAGroup(ctx context.Context, claGroupModel *v1Models.ClaGroup, authUser *auth.User) error
	EnrollProjectsInClaGroup(ctx context.Context, request *EnrollProjectsModel) error
	UnenrollProjectsInClaGroup(ctx context.Context, request *UnenrollProjectsModel) error
	AssociateCLAGroupWithProjects(ctx context.Context, request *AssociateCLAGroupWithProjectsModel) error
	UnassociateCLAGroupWithProjects(ctx context.Context, request *UnassociateCLAGroupWithProjectsModel) error
	EnableCLAService(ctx context.Context, authUser *auth.User, claGroupID string, projectSFIDList []string) error
	DisableCLAService(ctx context.Context, authUser *auth.User, claGroupID string, projectSFIDList []string) error
	ValidateCLAGroup(ctx context.Context, input *models.ClaGroupValidationRequest) (bool, []string)
}

Service interface

func NewService

func NewService(projectService service2.Service, templateService v1Template.ServiceInterface, projectsClaGroupsRepo projects_cla_groups.Repository, claMangerRequests v1ClaManager.IService, signatureService signatureService.SignatureService, metricsRepo metrics.Repository, gerritService gerrits.Service, repositoriesService repositories.Service, eventsService events.Service) Service

NewService returns instance of CLA group service

type UnassociateCLAGroupWithProjectsModel

type UnassociateCLAGroupWithProjectsModel struct {
	AuthUser        *auth.User
	CLAGroupID      string
	FoundationSFID  string
	ProjectSFIDList []string
}

UnassociateCLAGroupWithProjectsModel to encapsulate the unassociate request

type UnenrollProjectsModel

type UnenrollProjectsModel struct {
	AuthUser        *auth.User
	CLAGroupID      string
	FoundationSFID  string
	ProjectSFIDList []string
}

UnenrollProjectsModel model to encapsulate the unenroll projects request

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL