http

package
v0.0.0-...-501b6b7 Latest Latest
Warning

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

Go to latest
Published: May 3, 2024 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

View Source
const MAX_LOG_LEN = 1000

Variables

View Source
var (
	StatusResult = map[string]string{
		"BUILDING":         "PROGRESS",
		"BUILD_SUCCESS":    "DONE",
		"BUILD_FAILED":     "FAILED",
		"DEPLOYING":        "PROGRESS",
		"DEPLOY_SUCCESS":   "DONE",
		"DEPLOY_FAILED":    "FAILED",
		"PROMOTE_WAIT":     "WAITING",
		"PROMOTING":        "PROGRESS",
		"PROMOTE_SUCCESS":  "DONE",
		"PROMOTE_FAILED":   "FAILED",
		"ABORTING":         "PROGRESS",
		"ABORT_SUCCESS":    "DONE",
		"ABORT_FAILED":     "FAILED",
		"ROLLBACKING":      "PROGRESS",
		"ROLLBACK_SUCCESS": "DONE",
		"ROLLBACK_FAILED":  "FAILED",
		"DELETING":         "PROGRESS",
		"DELETE_SUCCESS":   "DONE",
		"DELETE_FAILED":    "FAILED",
		"WAITING":          "WAITING",
	}
	StatusStages = map[string]map[string]string{
		"PREPARING":        {"build": "WAITING", "deploy": "WAITING", "promote": "WAITING"},
		"BUILDING":         {"build": "BUILDING", "deploy": "WAITING", "promote": "WAITING"},
		"BUILD_SUCCESS":    {"build": "BUILD_SUCCESS", "deploy": "WAITING", "promote": "WAITING"},
		"BUILD_FAILED":     {"build": "BUILD_FAILED", "deploy": "WAITING", "promote": "WAITING"},
		"DEPLOYING":        {"build": "BUILD_SUCCESS", "deploy": "DEPLOYING", "promote": "WAITING"},
		"DEPLOY_SUCCESS":   {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "WAITING"},
		"DEPLOY_FAILED":    {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_FAILED", "promote": "WAITING"},
		"PROMOTE_WAIT":     {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "PROMOTE_WAIT"},
		"PROMOTING":        {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "PROMOTING"},
		"PROMOTE_SUCCESS":  {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "PROMOTE_SUCCESS"},
		"PROMOTE_FAILED":   {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "PROMOTE_FAILED"},
		"ABORTING":         {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "ABORTING"},
		"ABORT_SUCCESS":    {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "ABORT_SUCCESS"},
		"ABORT_FAILED":     {"build": "BUILD_SUCCESS", "deploy": "DEPLOY_SUCCESS", "promote": "ABORT_FAILED"},
		"ROLLBACKING":      {"rollback": "ROLLBACKING"},
		"ROLLBACK_SUCCESS": {"rollback": "ROLLBACK_SUCCESS"},
		"ROLLBACK_FAILED":  {"rollback": "ROLLBACK_FAILED"},
		"DELETING":         {"delete": "DELETING"},
		"DELETE_SUCCESS":   {"delete": "DELETE_SUCCESS"},
		"DELETE_FAILED":    {"delete": "DELETE_FAILED"},
	}
)

Functions

func ErrorJSON

func ErrorJSON(w http.ResponseWriter, r *http.Request, err error)

func MarshalToString

func MarshalToString(ctx context.Context, in any) (string, error)

func ResponseJSON

func ResponseJSON(w http.ResponseWriter, r *http.Request, httpStatus int, data interface{})

func UnmarshalFromString

func UnmarshalFromString(ctx context.Context, content string, in any) error

func UnmarshalRequestInput

func UnmarshalRequestInput(r *http.Request, in any) error

func ValidateDomainObject

func ValidateDomainObject(in any) error

Http Request가 아닌 경우에도 domain 객체 validate가 필요한 경우 호출 예를 들어 정책의 match를 RawYaml로 전달받았을 경우 이를 domain.Match 객체로 unmarshalling 한 후 domain.Match를 이용해서 validate 가능

Types

type AppGroupHandler

type AppGroupHandler struct {
	// contains filtered or unexported fields
}

func NewAppGroupHandler

func NewAppGroupHandler(h usecase.Usecase) *AppGroupHandler

func (*AppGroupHandler) CreateAppGroup

func (h *AppGroupHandler) CreateAppGroup(w http.ResponseWriter, r *http.Request)

CreateAppGroup godoc

@Tags			AppGroups
@Summary		Install appGroup
@Description	Install appGroup
@Accept			json
@Produce		json
@Param			body	body		domain.CreateAppGroupRequest	true	"create appgroup request"
@Success		200		{object}	domain.CreateAppGroupResponse
@Router			/app-groups [post]
@Security		JWT

func (*AppGroupHandler) CreateApplication

func (h *AppGroupHandler) CreateApplication(w http.ResponseWriter, r *http.Request)

CreateApplication godoc

@Tags			AppGroups
@Summary		Create application
@Description	Create application
@Accept			json
@Produce		json
@Param			object	body		domain.CreateApplicationRequest	true	"body"
@Success		200		{object}	nil
@Router			/app-groups/{appGroupId}/applications [post]
@Security		JWT

func (*AppGroupHandler) DeleteAppGroup

func (h *AppGroupHandler) DeleteAppGroup(w http.ResponseWriter, r *http.Request)

DeleteAppGroup godoc

@Tags			AppGroups
@Summary		Uninstall appGroup
@Description	Uninstall appGroup
@Accept			json
@Produce		json
@Param			object	body		string	true	"body"
@Success		200		{object}	nil
@Router			/app-groups [delete]
@Security		JWT

func (*AppGroupHandler) GetAppGroup

func (h *AppGroupHandler) GetAppGroup(w http.ResponseWriter, r *http.Request)

GetAppGroup godoc

@Tags			AppGroups
@Summary		Get appGroup detail
@Description	Get appGroup detail by appGroupId
@Accept			json
@Produce		json
@Param			appGroupId	path		string	true	"appGroupId"
@Success		200			{object}	domain.GetAppGroupResponse
@Router			/app-groups/{appGroupId} [get]
@Security		JWT

func (*AppGroupHandler) GetAppGroups

func (h *AppGroupHandler) GetAppGroups(w http.ResponseWriter, r *http.Request)

GetAppGroups godoc

@Tags			AppGroups
@Summary		Get appGroup list
@Description	Get appGroup list by giving params
@Accept			json
@Produce		json
@Param			clusterId	query		string		false	"clusterId"
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			soertColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filters		query		[]string	false	"filters"
@Success		200			{object}	domain.GetAppGroupsResponse
@Router			/app-groups [get]
@Security		JWT

func (*AppGroupHandler) GetApplications

func (h *AppGroupHandler) GetApplications(w http.ResponseWriter, r *http.Request)

GetApplications godoc

@Tags			AppGroups
@Summary		Get applications
@Description	Get applications
@Accept			json
@Produce		json
@Param			appGroupId		path		string	true	"appGroupId"
@Param			applicationType	query		string	true	"applicationType"
@Success		200				{object}	domain.GetApplicationsResponse
@Router			/app-groups/{appGroupId}/applications [get]
@Security		JWT

type AppServeAppHandler

type AppServeAppHandler struct {
	// contains filtered or unexported fields
}

func NewAppServeAppHandler

func NewAppServeAppHandler(u usecase.Usecase) *AppServeAppHandler

func (*AppServeAppHandler) CreateAppServeApp

func (h *AppServeAppHandler) CreateAppServeApp(w http.ResponseWriter, r *http.Request)

CreateAppServeApp godoc

@Tags			AppServeApps
@Summary		Install appServeApp
@Description	Install appServeApp
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"Organization ID"
@Param			projectId		path		string							true	"Project ID"
@Param			object			body		domain.CreateAppServeAppRequest	true	"Request body to create app"
@Success		200				{object}	string
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps [post]
@Security		JWT

func (*AppServeAppHandler) DeleteAppServeApp

func (h *AppServeAppHandler) DeleteAppServeApp(w http.ResponseWriter, r *http.Request)

DeleteAppServeApp godoc

@Tags			AppServeApps
@Summary		Uninstall appServeApp
@Description	Uninstall appServeApp
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			appId			path		string	true	"App ID"
@Success		200				{object}	string
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId} [delete]
@Security		JWT

func (*AppServeAppHandler) GetAppServeAppLatestTask

func (h *AppServeAppHandler) GetAppServeAppLatestTask(w http.ResponseWriter, r *http.Request)

GetAppServeAppLatestTask godoc

@Tags			AppServeApps
@Summary		Get latest task from appServeApp
@Description	Get latest task from appServeApp
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			appId			path		string	true	"App ID"
@Success		200				{object}	domain.GetAppServeAppTaskResponse
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId}/latest-task [get]
@Security		JWT

func (*AppServeAppHandler) GetAppServeAppTaskDetail

func (h *AppServeAppHandler) GetAppServeAppTaskDetail(w http.ResponseWriter, r *http.Request)

GetAppServeAppTaskDetail godoc

@Tags			AppServeApps
@Summary		Get task detail from appServeApp
@Description	Get task detail from appServeApp
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			appId			path		string	true	"App ID"
@Param			taskId			path		string	true	"Task ID"
@Success		200				{object}	domain.GetAppServeAppTaskResponse
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId}/tasks/{taskId} [get]
@Security		JWT

func (*AppServeAppHandler) GetAppServeAppTasksByAppId

func (h *AppServeAppHandler) GetAppServeAppTasksByAppId(w http.ResponseWriter, r *http.Request)

GetAppServeAppTasksByAppId godoc

@Tags			AppServeApps
@Summary		Get appServeAppTask list
@Description	Get appServeAppTask list by giving params
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"Organization ID"
@Param			projectId		path		string		true	"Project ID"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			sortColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	[]model.AppServeApp
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId}/tasks [get]
@Security		JWT

func (*AppServeAppHandler) GetAppServeApps

func (h *AppServeAppHandler) GetAppServeApps(w http.ResponseWriter, r *http.Request)

GetAppServeApps godoc

@Tags			AppServeApps
@Summary		Get appServeApp list
@Description	Get appServeApp list by giving params
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"Organization ID"
@Param			projectId		path		string		true	"Project ID"
@Param			showAll			query		boolean		false	"Show all apps including deleted apps"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	[]model.AppServeApp
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps [get]
@Security		JWT

func (*AppServeAppHandler) GetNumOfAppsOnStack

func (h *AppServeAppHandler) GetNumOfAppsOnStack(w http.ResponseWriter, r *http.Request)

GetNumOfAppsOnStack godoc

@Tags			AppServeApps
@Summary		Get number of apps on given stack
@Description	Get number of apps on given stack
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			stackId			query		string	true	"Stack ID"
@Success		200				{object}	int64
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/count [get]
@Security		JWT

func (*AppServeAppHandler) IsAppServeAppExist

func (h *AppServeAppHandler) IsAppServeAppExist(w http.ResponseWriter, r *http.Request)

IsAppServeAppExist godoc

@Tags			AppServeApps
@Summary		Get appServeApp
@Description	Get appServeApp by giving params
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Success		200				{object}	bool
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId}/exist [get]
@Security		JWT

func (*AppServeAppHandler) IsAppServeAppNameExist

func (h *AppServeAppHandler) IsAppServeAppNameExist(w http.ResponseWriter, r *http.Request)

IsAppServeAppNameExist godoc

@Tags			AppServeApps
@Summary		Check duplicate appServeAppName
@Description	Check duplicate appServeAppName by giving params
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			name			path		string	true	"name"
@Success		200				{object}	bool
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/name/{name}/existence [get]
@Security		JWT

func (*AppServeAppHandler) RollbackAppServeApp

func (h *AppServeAppHandler) RollbackAppServeApp(w http.ResponseWriter, r *http.Request)

RollbackAppServeApp godoc

@Tags			AppServeApps
@Summary		Rollback appServeApp
@Description	Rollback appServeApp
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"Organization ID"
@Param			projectId		path		string								true	"Project ID"
@Param			appId			path		string								true	"App ID"
@Param			object			body		domain.RollbackAppServeAppRequest	true	"Request body to rollback app"
@Success		200				{object}	string
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId}/rollback [post]
@Security		JWT

func (*AppServeAppHandler) UpdateAppServeApp

func (h *AppServeAppHandler) UpdateAppServeApp(w http.ResponseWriter, r *http.Request)

UpdateAppServeApp godoc

@Tags			AppServeApps
@Summary		Update appServeApp
@Description	Update appServeApp
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"Organization ID"
@Param			projectId		path		string							true	"Project ID"
@Param			appId			path		string							true	"App ID"
@Param			object			body		domain.UpdateAppServeAppRequest	true	"Request body to update app"
@Success		200				{object}	string
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId} [put]
@Security		JWT

func (*AppServeAppHandler) UpdateAppServeAppEndpoint

func (h *AppServeAppHandler) UpdateAppServeAppEndpoint(w http.ResponseWriter, r *http.Request)

UpdateAppServeAppEndpoint godoc

@Tags			AppServeApps
@Summary		Update app endpoint
@Description	Update app endpoint
@Accept			json
@Produce		json
@Param			organizationId	path		string									true	"Organization ID"
@Param			projectId		path		string									true	"Project ID"
@Param			appId			path		string									true	"appId"
@Param			body			body		domain.UpdateAppServeAppEndpointRequest	true	"Request body to update app endpoint"
@Success		200				{object}	string
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId}/endpoint [patch]
@Security		JWT

func (*AppServeAppHandler) UpdateAppServeAppStatus

func (h *AppServeAppHandler) UpdateAppServeAppStatus(w http.ResponseWriter, r *http.Request)

UpdateAppServeAppStatus godoc

@Tags			AppServeApps
@Summary		Update app status
@Description	Update app status
@Accept			json
@Produce		json
@Param			organizationId	path		string									true	"Organization ID"
@Param			projectId		path		string									true	"Project ID"
@Param			appId			path		string									true	"App ID"
@Param			body			body		domain.UpdateAppServeAppStatusRequest	true	"Request body to update app status"
@Success		200				{object}	string
@Router			/organizations/{organizationId}/projects/{projectId}/app-serve-apps/{appId}/status [patch]
@Security		JWT

type AuditHandler

type AuditHandler struct {
	// contains filtered or unexported fields
}

func NewAuditHandler

func NewAuditHandler(h usecase.Usecase) *AuditHandler

func (*AuditHandler) CreateAudit

func (h *AuditHandler) CreateAudit(w http.ResponseWriter, r *http.Request)

CreateAudit godoc

@Tags			Audits
@Summary		Create Audit
@Description	Create Audit
@Accept			json
@Produce		json
@Param			body	body		domain.CreateAuditRequest	true	"create audit request"
@Success		200		{object}	domain.CreateAuditResponse
@Router			/admin/audits [post]
@Security		JWT

func (*AuditHandler) DeleteAudit

func (h *AuditHandler) DeleteAudit(w http.ResponseWriter, r *http.Request)

DeleteAudit godoc

@Tags			Audits
@Summary		Delete Audit 'NOT IMPLEMENTED'
@Description	Delete Audit
@Accept			json
@Produce		json
@Param			auditId	path		string	true	"auditId"
@Success		200		{object}	nil
@Router			/admin/audits/{auditId} [delete]
@Security		JWT

func (*AuditHandler) GetAudit

func (h *AuditHandler) GetAudit(w http.ResponseWriter, r *http.Request)

GetAudit godoc

@Tags			Audits
@Summary		Get Audit
@Description	Get Audit
@Accept			json
@Produce		json
@Param			auditId	path		string	true	"auditId"
@Success		200		{object}	domain.GetAuditResponse
@Router			/admin/audits/{auditId} [get]
@Security		JWT

func (*AuditHandler) GetAudits

func (h *AuditHandler) GetAudits(w http.ResponseWriter, r *http.Request)

GetAudit godoc

@Tags			Audits
@Summary		Get Audits
@Description	Get Audits
@Accept			json
@Produce		json
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			soertColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filter		query		[]string	false	"filters"
@Param			or			query		[]string	false	"filters"
@Success		200			{object}	domain.GetAuditsResponse
@Router			/admin/audits [get]
@Security		JWT

type AuthHandler

type AuthHandler struct {
	// contains filtered or unexported fields
}

func (*AuthHandler) FindId

func (h *AuthHandler) FindId(w http.ResponseWriter, r *http.Request)

FindId godoc

@Tags			Auth
@Summary		Request to find forgotten ID
@Description	This API allows users to find their account ID by submitting required information
@Accept			json
@Produce		json
@Param			body	body		domain.FindIdRequest	true	"Request body for finding the account ID including {organization ID, email, username, 6 digit code}"
@Success		200		{object}	domain.FindIdResponse
@Failure		400		{object}	httpErrors.RestError
@Router			/auth/find-id/verification [post]

func (*AuthHandler) FindPassword

func (h *AuthHandler) FindPassword(w http.ResponseWriter, r *http.Request)

FindPassword godoc

@Tags			Auth
@Summary		Request to find forgotten password
@Description	This API allows users to reset their forgotten password by submitting required information
@Accept			json
@Produce		json
@Param			body	body	domain.FindPasswordRequest	true	"Request body for finding the password including {organization ID, email, username, Account ID, 6 digit code}"
@Success		200
@Failure		400	{object}	httpErrors.RestError
@Router			/auth/find-password/verification [post]

func (*AuthHandler) Login

func (h *AuthHandler) Login(w http.ResponseWriter, r *http.Request)

Login godoc

@Tags			Auth
@Summary		login
@Description	login
@Accept			json
@Produce		json
@Param			body	body		domain.LoginRequest		true	"account info"
@Success		200		{object}	domain.LoginResponse	"user detail"
@Router			/auth/login [post]

func (*AuthHandler) Logout

func (h *AuthHandler) Logout(w http.ResponseWriter, r *http.Request)

Logout godoc

@Tags			Auth
@Summary		logout
@Description	logout
@Accept			json
@Produce		json
@Router			/auth/logout [post]
@Security		JWT

func (*AuthHandler) RefreshToken

func (h *AuthHandler) RefreshToken(w http.ResponseWriter, r *http.Request)

func (*AuthHandler) VerifyIdentityForLostId

func (h *AuthHandler) VerifyIdentityForLostId(w http.ResponseWriter, r *http.Request)

VerifyIdentityForLostId godoc

@Tags			Auth
@Summary		Request to verify identity for lost id
@Description	This API allows users to verify their identity for lost id by submitting required information
@Accept			json
@Produce		json
@Param			body	body		domain.VerifyIdentityForLostIdRequest	true	"Request body for verifying identity for lost id including {organization ID, email, username}"
@Success		200		{object}	domain.VerifyIdentityForLostIdResponse
@Failure		400		{object}	httpErrors.RestError
@Router			/auth/find-id/code [post]

func (*AuthHandler) VerifyIdentityForLostPassword

func (h *AuthHandler) VerifyIdentityForLostPassword(w http.ResponseWriter, r *http.Request)

VerifyIdentityForLostPassword godoc

@Tags			Auth
@Summary		Request to verify identity for lost password
@Description	This API allows users to verify their identity for lost password by submitting required information
@Accept			json
@Produce		json
@Param			body	body		domain.VerifyIdentityForLostPasswordRequest	true	"Request body for verifying identity for lost password including {organization ID, email, username, Account ID}"
@Success		200		{object}	domain.VerifyIdentityForLostPasswordResponse
@Failure		400		{object}	httpErrors.RestError
@Router			/auth/find-password/code [post]

func (*AuthHandler) VerifyToken

func (h *AuthHandler) VerifyToken(w http.ResponseWriter, r *http.Request)

type CloudAccountHandler

type CloudAccountHandler struct {
	// contains filtered or unexported fields
}

func NewCloudAccountHandler

func NewCloudAccountHandler(h usecase.Usecase) *CloudAccountHandler

func (*CloudAccountHandler) CheckAwsAccountId

func (h *CloudAccountHandler) CheckAwsAccountId(w http.ResponseWriter, r *http.Request)

CheckAwsAccountId godoc

@Tags			CloudAccounts
@Summary		Check awsAccountId for cloudAccount
@Description	Check awsAccountId for cloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			awsAccountId	path		string	true	"awsAccountId"
@Success		200				{object}	domain.CheckCloudAccountAwsAccountIdResponse
@Router			/organizations/{organizationId}/cloud-accounts/aws-account-id/{awsAccountId}/existence [GET]
@Security		JWT

func (*CloudAccountHandler) CheckCloudAccountName

func (h *CloudAccountHandler) CheckCloudAccountName(w http.ResponseWriter, r *http.Request)

CheckCloudAccountName godoc

@Tags			CloudAccounts
@Summary		Check name for cloudAccount
@Description	Check name for cloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			name			path		string	true	"name"
@Success		200				{object}	domain.CheckCloudAccountNameResponse
@Router			/organizations/{organizationId}/cloud-accounts/name/{name}/existence [GET]
@Security		JWT

func (*CloudAccountHandler) CreateCloudAccount

func (h *CloudAccountHandler) CreateCloudAccount(w http.ResponseWriter, r *http.Request)

CreateCloudAccount godoc

@Tags			CloudAccounts
@Summary		Create CloudAccount
@Description	Create CloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"organizationId"
@Param			body			body		domain.CreateCloudAccountRequest	true	"create cloud setting request"
@Success		200				{object}	domain.CreateCloudAccountResponse
@Router			/organizations/{organizationId}/cloud-accounts [post]
@Security		JWT

func (*CloudAccountHandler) DeleteCloudAccount

func (h *CloudAccountHandler) DeleteCloudAccount(w http.ResponseWriter, r *http.Request)

DeleteCloudAccount godoc

@Tags			CloudAccounts
@Summary		Delete CloudAccount
@Description	Delete CloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"organizationId"
@Param			body			body		domain.DeleteCloudAccountRequest	true	"Delete cloud setting request"
@Param			cloudAccountId	path		string								true	"cloudAccountId"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/cloud-accounts/{cloudAccountId} [delete]
@Security		JWT

func (*CloudAccountHandler) DeleteForceCloudAccount

func (h *CloudAccountHandler) DeleteForceCloudAccount(w http.ResponseWriter, r *http.Request)

DeleteForceCloudAccount godoc

@Tags			CloudAccounts
@Summary		Delete Force CloudAccount
@Description	Delete Force CloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			cloudAccountId	path		string	true	"cloudAccountId"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/cloud-accounts/{cloudAccountId}/error [delete]
@Security		JWT

func (*CloudAccountHandler) GetCloudAccount

func (h *CloudAccountHandler) GetCloudAccount(w http.ResponseWriter, r *http.Request)

GetCloudAccount godoc

@Tags			CloudAccounts
@Summary		Get CloudAccount
@Description	Get CloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			cloudAccountId	path		string	true	"cloudAccountId"
@Success		200				{object}	domain.GetCloudAccountResponse
@Router			/organizations/{organizationId}/cloud-accounts/{cloudAccountId} [get]
@Security		JWT

func (*CloudAccountHandler) GetCloudAccounts

func (h *CloudAccountHandler) GetCloudAccounts(w http.ResponseWriter, r *http.Request)

GetCloudAccount godoc

@Tags			CloudAccounts
@Summary		Get CloudAccounts
@Description	Get CloudAccounts
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"organizationId"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.GetCloudAccountsResponse
@Router			/organizations/{organizationId}/cloud-accounts [get]
@Security		JWT

func (*CloudAccountHandler) GetResourceQuota

func (h *CloudAccountHandler) GetResourceQuota(w http.ResponseWriter, r *http.Request)

GetResourceQuota godoc

@Tags			CloudAccounts
@Summary		Get resource quota by cloudAccount
@Description	Get resource quota by cloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			cloudAccountId	path		string	true	"cloudAccountId"
@Success		200				{object}	domain.GetCloudAccountResourceQuotaResponse
@Router			/organizations/{organizationId}/cloud-accounts/{cloudAccountId}/quota [GET]
@Security		JWT

func (*CloudAccountHandler) UpdateCloudAccount

func (h *CloudAccountHandler) UpdateCloudAccount(w http.ResponseWriter, r *http.Request)

UpdateCloudAccount godoc

@Tags			CloudAccounts
@Summary		Update CloudAccount
@Description	Update CloudAccount
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"organizationId"
@Param			body			body		domain.UpdateCloudAccountRequest	true	"Update cloud setting request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/cloud-accounts/{cloudAccountId} [put]
@Security		JWT

type ClusterHandler

type ClusterHandler struct {
	// contains filtered or unexported fields
}

func NewClusterHandler

func NewClusterHandler(h usecase.Usecase) *ClusterHandler

func (*ClusterHandler) CreateBootstrapKubeconfig

func (h *ClusterHandler) CreateBootstrapKubeconfig(w http.ResponseWriter, r *http.Request)

CreateBootstrapKubeconfig godoc

@Tags			Clusters
@Summary		Create bootstrap kubeconfig for BYOH
@Description	Create bootstrap kubeconfig for BYOH
@Accept			json
@Produce		json
@Success		200	{object}	domain.CreateBootstrapKubeconfigResponse
@Router			/clusters/{clusterId}/bootstrap-kubeconfig [post]
@Security		JWT

func (*ClusterHandler) CreateCluster

func (h *ClusterHandler) CreateCluster(w http.ResponseWriter, r *http.Request)

CreateCluster godoc

@Tags			Clusters
@Summary		Create cluster
@Description	Create cluster
@Accept			json
@Produce		json
@Param			body	body		domain.CreateClusterRequest	true	"create cluster request"
@Success		200		{object}	domain.CreateClusterResponse
@Router			/clusters [post]
@Security		JWT

func (*ClusterHandler) DeleteCluster

func (h *ClusterHandler) DeleteCluster(w http.ResponseWriter, r *http.Request)

DeleteCluster godoc

@Tags			Clusters
@Summary		Delete cluster
@Description	Delete cluster
@Accept			json
@Produce		json
@Param			clusterId	path		string	true	"clusterId"
@Success		200			{object}	nil
@Router			/clusters/{clusterId} [delete]
@Security		JWT

func (*ClusterHandler) GetBootstrapKubeconfig

func (h *ClusterHandler) GetBootstrapKubeconfig(w http.ResponseWriter, r *http.Request)

GetBootstrapKubeconfig godoc

@Tags			Clusters
@Summary		Get bootstrap kubeconfig for BYOH
@Description	Get bootstrap kubeconfig for BYOH
@Accept			json
@Produce		json
@Success		200	{object}	domain.GetBootstrapKubeconfigResponse
@Router			/clusters/{clusterId}/bootstrap-kubeconfig [get]
@Security		JWT

func (*ClusterHandler) GetCluster

func (h *ClusterHandler) GetCluster(w http.ResponseWriter, r *http.Request)

GetCluster godoc

@Tags			Clusters
@Summary		Get cluster
@Description	Get cluster detail
@Accept			json
@Produce		json
@Param			clusterId	path		string	true	"clusterId"
@Success		200			{object}	domain.GetClusterResponse
@Router			/clusters/{clusterId} [get]
@Security		JWT

func (*ClusterHandler) GetClusterApplications

func (h *ClusterHandler) GetClusterApplications(w http.ResponseWriter, r *http.Request)

func (*ClusterHandler) GetClusterApplicationsKubeInfo

func (h *ClusterHandler) GetClusterApplicationsKubeInfo(w http.ResponseWriter, r *http.Request)

func (*ClusterHandler) GetClusterKubeConfig

func (h *ClusterHandler) GetClusterKubeConfig(w http.ResponseWriter, r *http.Request)

func (*ClusterHandler) GetClusterKubeResources

func (h *ClusterHandler) GetClusterKubeResources(w http.ResponseWriter, r *http.Request)

func (*ClusterHandler) GetClusterSiteValues

func (h *ClusterHandler) GetClusterSiteValues(w http.ResponseWriter, r *http.Request)

GetClusterSiteValues godoc

@Tags			Clusters
@Summary		Get cluster site values for creating
@Description	Get cluster site values for creating
@Accept			json
@Produce		json
@Param			clusterId	path		string	true	"clusterId"
@Success		200			{object}	domain.ClusterSiteValuesResponse
@Router			/clusters/{clusterId}/site-values [get]
@Security		JWT

func (*ClusterHandler) GetClusters

func (h *ClusterHandler) GetClusters(w http.ResponseWriter, r *http.Request)

GetClusters godoc

@Tags			Clusters
@Summary		Get clusters
@Description	Get cluster list
@Accept			json
@Produce		json
@Param			organizationId	query		string		false	"organizationId"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.GetClustersResponse
@Router			/clusters [get]
@Security		JWT

func (*ClusterHandler) GetKubernetesInfo

func (h *ClusterHandler) GetKubernetesInfo(w http.ResponseWriter, r *http.Request)

func (*ClusterHandler) GetNodes

func (h *ClusterHandler) GetNodes(w http.ResponseWriter, r *http.Request)

GetNodes godoc

@Tags			Clusters
@Summary		Get nodes information for BYOH
@Description	Get nodes information for BYOH
@Accept			json
@Produce		json
@Param			clusterId	path		string	true	"clusterId"
@Success		200			{object}	domain.GetClusterNodesResponse
@Router			/clusters/{clusterId}/nodes [get]
@Security		JWT

func (*ClusterHandler) ImportCluster

func (h *ClusterHandler) ImportCluster(w http.ResponseWriter, r *http.Request)

ImportCluster godoc

@Tags			Clusters
@Summary		Import cluster
@Description	Import cluster
@Accept			json
@Produce		json
@Param			body	body		domain.ImportClusterRequest	true	"import cluster request"
@Success		200		{object}	domain.ImportClusterResponse
@Router			/clusters/import [post]
@Security		JWT

func (*ClusterHandler) InstallCluster

func (h *ClusterHandler) InstallCluster(w http.ResponseWriter, r *http.Request)

InstallCluster godoc

@Tags			Clusters
@Summary		Install cluster on tks cluster
@Description	Install cluster on tks cluster
@Accept			json
@Produce		json
@Param			clusterId	path		string	true	"clusterId"
@Success		200			{object}	nil
@Router			/clusters/{clusterId}/install [post]
@Security		JWT

func (*ClusterHandler) SetIstioLabel

func (h *ClusterHandler) SetIstioLabel(w http.ResponseWriter, r *http.Request)

type DashboardHandler

type DashboardHandler struct {
	// contains filtered or unexported fields
}

func (*DashboardHandler) CreateDashboard

func (h *DashboardHandler) CreateDashboard(w http.ResponseWriter, r *http.Request)

CreateDashboard godoc

@Tags			Dashboards
@Summary		Create new dashboard
@Description	Create new dashboard
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"Organization ID"
@Param			request			body		domain.CreateDashboardRequest	true	"Request body to create dashboard"
@Success		200				{object}	domain.CreateDashboardResponse
@Router			/organizations/{organizationId}/dashboards [post]
@Security		JWT

func (*DashboardHandler) GetChart

func (h *DashboardHandler) GetChart(w http.ResponseWriter, r *http.Request)

GetChart godoc

@Tags			Dashboard Widgets
@Summary		Get chart data
@Description	Get chart data
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			chartType		path		string	true	"chartType"
@Param			duration		query		string	true	"duration"
@Param			interval		query		string	true	"interval"
@Success		200				{object}	domain.GetDashboardChartResponse
@Router			/organizations/{organizationId}/dashboards/widgets/charts/{chartType} [get]
@Security		JWT

func (*DashboardHandler) GetCharts

func (h *DashboardHandler) GetCharts(w http.ResponseWriter, r *http.Request)

GetCharts godoc

@Tags			Dashboard Widgets
@Summary		Get charts data
@Description	Get charts data
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			chartType		query		string	false	"chartType"
@Param			duration		query		string	true	"duration"
@Param			interval		query		string	true	"interval"
@Success		200				{object}	domain.GetDashboardChartsResponse
@Router			/organizations/{organizationId}/dashboards/widgets/charts [get]
@Security		JWT

func (*DashboardHandler) GetDashboard

func (h *DashboardHandler) GetDashboard(w http.ResponseWriter, r *http.Request)

GetDashboard godoc

@Tags			Dashboards
@Summary		Get dashboard
@Description	Get dashboard
@Accept			json
@Produce		json
@Param			organizationId	path	string	true	"Organization ID"
@Param			dashboardKey	path	string	true	"Dashboard Key"
@Success		200				{array}	domain.GetDashboardResponse
@Router			/organizations/{organizationId}/dashboards/{dashboardKey} [get]
@Security		JWT

func (*DashboardHandler) GetPolicyEnforcement

func (h *DashboardHandler) GetPolicyEnforcement(w http.ResponseWriter, r *http.Request)

GetPolicyEnforcement godoc

@Tags			Dashboard Widgets
@Summary		Get the number of policy enforcement
@Description	Get the number of policy enforcement
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Success		200				{object}	domain.GetDashboardPolicyEnforcementResponse
@Router			/organizations/{organizationId}/dashboards/widgets/policy-enforcement [get]
@Security		JWT

func (*DashboardHandler) GetPolicyStatistics

func (h *DashboardHandler) GetPolicyStatistics(w http.ResponseWriter, r *http.Request)

GetPolicyStatistics godoc

@Tags			Dashboard Widgets
@Summary		Get policy violation log
@Description	Get policy violation log
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Success		200				{object}	domain.GetDashboardPolicyStatisticsResponse
@Router			/organizations/{organizationId}/dashboards/widgets/policy-statistics [get]
@Security		JWT

func (*DashboardHandler) GetPolicyStatus

func (h *DashboardHandler) GetPolicyStatus(w http.ResponseWriter, r *http.Request)

GetPolicyStatus godoc

@Tags			Dashboard Widgets
@Summary		Get policy status
@Description	Get policy status
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Success		200				{object}	domain.GetDashboardPolicyStatusResponse
@Router			/organizations/{organizationId}/dashboards/widgets/policy-status [get]
@Security		JWT

func (*DashboardHandler) GetPolicyUpdate

func (h *DashboardHandler) GetPolicyUpdate(w http.ResponseWriter, r *http.Request)

GetPolicyUpdate godoc

@Tags			Dashboard Widgets
@Summary		Get the number of policytemplates that need to be updated
@Description	Get the number of policytemplates that need to be updated
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Success		200				{object}	domain.GetDashboardPolicyUpdateResponse
@Router			/organizations/{organizationId}/dashboards/widgets/policy-update [get]
@Security		JWT

func (*DashboardHandler) GetPolicyViolation

func (h *DashboardHandler) GetPolicyViolation(w http.ResponseWriter, r *http.Request)

GetPolicyViolation godoc

@Tags			Dashboard Widgets
@Summary		Get the number of policy violation
@Description	Get the number of policy violation
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			duration		query		string	true	"duration"
@Param			interval		query		string	true	"interval"
@Success		200				{object}	domain.GetDashboardPolicyViolationResponse
@Router			/organizations/{organizationId}/dashboards/widgets/policy-violation [get]
@Security		JWT

func (*DashboardHandler) GetPolicyViolationLog

func (h *DashboardHandler) GetPolicyViolationLog(w http.ResponseWriter, r *http.Request)

GetPolicyViolationLog godoc

@Tags			Dashboard Widgets
@Summary		Get policy violation log
@Description	Get policy violation log
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"organizationId"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.GetPolicyNotificationsResponse
@Router			/organizations/{organizationId}/dashboards/widgets/policy-violation-log [get]
@Security		JWT

func (*DashboardHandler) GetPolicyViolationTop5

func (h *DashboardHandler) GetPolicyViolationTop5(w http.ResponseWriter, r *http.Request)

GetPolicyViolationTop5 godoc

@Tags			Dashboard Widgets
@Summary		Get policy violation top5
@Description	Get policy violation top5
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			duration		query		string	true	"duration"
@Param			interval		query		string	true	"interval"
@Success		200				{object}	domain.GetDashboardPolicyViolationTop5Response
@Router			/organizations/{organizationId}/dashboards/widgets/policy-violation-top5 [get]
@Security		JWT

func (*DashboardHandler) GetResources

func (h *DashboardHandler) GetResources(w http.ResponseWriter, r *http.Request)

GetResources godoc

@Tags			Dashboard Widgets
@Summary		Get resources
@Description	Get resources
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	domain.GetDashboardResourcesResponse
@Router			/organizations/{organizationId}/dashboards/widgets/resources [get]
@Security		JWT

func (*DashboardHandler) GetStacks

func (h *DashboardHandler) GetStacks(w http.ResponseWriter, r *http.Request)

GetStacks godoc

@Tags			Dashboard Widgets
@Summary		Get stacks
@Description	Get stacks
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	domain.GetDashboardStacksResponse
@Router			/organizations/{organizationId}/dashboards/widgets/stacks [get]
@Security		JWT

func (*DashboardHandler) GetWorkload

func (h *DashboardHandler) GetWorkload(w http.ResponseWriter, r *http.Request)

GetWorkload godoc

@Tags			Dashboard Widgets
@Summary		Get workloads
@Description	Get workloads
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Success		200				{object}	domain.GetDashboardWorkloadResponse
@Router			/organizations/{organizationId}/dashboards/widgets/workload [get]
@Security		JWT

func (*DashboardHandler) UpdateDashboard

func (h *DashboardHandler) UpdateDashboard(w http.ResponseWriter, r *http.Request)

UpdateDashboard godoc

@Tags			Dashboards
@Summary		Update dashboard
@Description	Update dashboard
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"Organization ID"
@Param			request			body		domain.UpdateDashboardRequest	true	"Request body to update dashboard"
@Success		200				{object}	domain.CommonDashboardResponse
@Router			/organizations/{organizationId}/dashboards/{dashboardKey} [put]
@Security		JWT

type IAuthHandler

type IAuthHandler interface {
	Login(w http.ResponseWriter, r *http.Request)
	Logout(w http.ResponseWriter, r *http.Request)
	RefreshToken(w http.ResponseWriter, r *http.Request)
	FindId(w http.ResponseWriter, r *http.Request)
	FindPassword(w http.ResponseWriter, r *http.Request)
	VerifyIdentityForLostId(w http.ResponseWriter, r *http.Request)
	VerifyIdentityForLostPassword(w http.ResponseWriter, r *http.Request)

	VerifyToken(w http.ResponseWriter, r *http.Request)
}

func NewAuthHandler

func NewAuthHandler(h usecase.Usecase) IAuthHandler

type IDashboardHandler

type IDashboardHandler interface {
	CreateDashboard(w http.ResponseWriter, r *http.Request)
	GetDashboard(w http.ResponseWriter, r *http.Request)
	UpdateDashboard(w http.ResponseWriter, r *http.Request)
	GetCharts(w http.ResponseWriter, r *http.Request)
	GetChart(w http.ResponseWriter, r *http.Request)
	GetStacks(w http.ResponseWriter, r *http.Request)
	GetResources(w http.ResponseWriter, r *http.Request)
	GetPolicyStatus(w http.ResponseWriter, r *http.Request)
	GetPolicyUpdate(w http.ResponseWriter, r *http.Request)
	GetPolicyEnforcement(w http.ResponseWriter, r *http.Request)
	GetPolicyViolation(w http.ResponseWriter, r *http.Request)
	GetPolicyViolationLog(w http.ResponseWriter, r *http.Request)
	GetPolicyStatistics(w http.ResponseWriter, r *http.Request)
	GetWorkload(w http.ResponseWriter, r *http.Request)
	GetPolicyViolationTop5(w http.ResponseWriter, r *http.Request)
}

func NewDashboardHandler

func NewDashboardHandler(h usecase.Usecase) IDashboardHandler

type IPermissionHandler

type IPermissionHandler interface {
	GetPermissionTemplates(w http.ResponseWriter, r *http.Request)
}

func NewPermissionHandler

func NewPermissionHandler(usecase usecase.Usecase) IPermissionHandler

type IPolicyHandler

type IPolicyHandler interface {
	CreatePolicy(w http.ResponseWriter, r *http.Request)
	UpdatePolicy(w http.ResponseWriter, r *http.Request)
	DeletePolicy(w http.ResponseWriter, r *http.Request)
	GetPolicy(w http.ResponseWriter, r *http.Request)
	ListPolicy(w http.ResponseWriter, r *http.Request)
	UpdatePolicyTargetClusters(w http.ResponseWriter, r *http.Request)
	GetMandatoryPolicies(w http.ResponseWriter, r *http.Request)
	SetMandatoryPolicies(w http.ResponseWriter, r *http.Request)
	ExistsPolicyName(w http.ResponseWriter, r *http.Request)
	ExistsPolicyResourceName(w http.ResponseWriter, r *http.Request)
	ListStackPolicyStatus(w http.ResponseWriter, r *http.Request)
	GetStackPolicyTemplateStatus(w http.ResponseWriter, r *http.Request)
	UpdateStackPolicyTemplateStatus(w http.ResponseWriter, r *http.Request)
	GetPolicyEdit(w http.ResponseWriter, r *http.Request)
	GetPolicyStatistics(w http.ResponseWriter, r *http.Request)
	AddPoliciesForStack(w http.ResponseWriter, r *http.Request)
	UpdatePoliciesForStack(w http.ResponseWriter, r *http.Request)
	DeletePoliciesForStack(w http.ResponseWriter, r *http.Request)
	StackPolicyStatistics(w http.ResponseWriter, r *http.Request)
}

func NewPolicyHandler

func NewPolicyHandler(u usecase.Usecase) IPolicyHandler

type IPolicyTemplateHandler

type IPolicyTemplateHandler interface {
	Admin_CreatePolicyTemplate(w http.ResponseWriter, r *http.Request)
	Admin_UpdatePolicyTemplate(w http.ResponseWriter, r *http.Request)
	Admin_DeletePolicyTemplate(w http.ResponseWriter, r *http.Request)
	Admin_GetPolicyTemplate(w http.ResponseWriter, r *http.Request)
	Admin_ListPolicyTemplate(w http.ResponseWriter, r *http.Request)
	Admin_ExistsPolicyTemplateName(w http.ResponseWriter, r *http.Request)
	Admin_ExistsPolicyTemplateKind(w http.ResponseWriter, r *http.Request)
	Admin_ListPolicyTemplateStatistics(w http.ResponseWriter, r *http.Request)
	Admin_GetPolicyTemplateDeploy(w http.ResponseWriter, r *http.Request)
	Admin_CreatePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)
	Admin_GetPolicyTemplateVersion(w http.ResponseWriter, r *http.Request)
	Admin_DeletePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)
	Admin_ListPolicyTemplateVersions(w http.ResponseWriter, r *http.Request)
	Admin_ExtractParameters(w http.ResponseWriter, r *http.Request)
	Admin_AddPermittedPolicyTemplatesForOrganization(w http.ResponseWriter, r *http.Request)
	Admin_UpdatePermittedPolicyTemplatesForOrganization(w http.ResponseWriter, r *http.Request)
	Admin_DeletePermittedPolicyTemplatesForOrganization(w http.ResponseWriter, r *http.Request)

	CreatePolicyTemplate(w http.ResponseWriter, r *http.Request)
	UpdatePolicyTemplate(w http.ResponseWriter, r *http.Request)
	DeletePolicyTemplate(w http.ResponseWriter, r *http.Request)
	GetPolicyTemplate(w http.ResponseWriter, r *http.Request)
	ListPolicyTemplate(w http.ResponseWriter, r *http.Request)
	ExistsPolicyTemplateName(w http.ResponseWriter, r *http.Request)
	ExistsPolicyTemplateKind(w http.ResponseWriter, r *http.Request)
	ListPolicyTemplateStatistics(w http.ResponseWriter, r *http.Request)
	GetPolicyTemplateDeploy(w http.ResponseWriter, r *http.Request)
	CreatePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)
	GetPolicyTemplateVersion(w http.ResponseWriter, r *http.Request)
	DeletePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)
	ListPolicyTemplateVersions(w http.ResponseWriter, r *http.Request)
	ExtractParameters(w http.ResponseWriter, r *http.Request)

	RegoCompile(w http.ResponseWriter, r *http.Request)
}

func NewPolicyTemplateHandler

func NewPolicyTemplateHandler(u usecase.Usecase) IPolicyTemplateHandler

type IProjectHandler

type IProjectHandler interface {
	CreateProject(w http.ResponseWriter, r *http.Request)
	GetProjectRole(w http.ResponseWriter, r *http.Request)
	GetProjectRoles(w http.ResponseWriter, r *http.Request)
	UpdateProject(w http.ResponseWriter, r *http.Request)
	DeleteProject(w http.ResponseWriter, r *http.Request)
	GetProject(w http.ResponseWriter, r *http.Request)
	IsProjectNameExist(w http.ResponseWriter, r *http.Request)
	GetProjects(w http.ResponseWriter, r *http.Request)
	Admin_GetProjects(w http.ResponseWriter, r *http.Request)

	AddProjectMember(w http.ResponseWriter, r *http.Request)
	GetProjectMember(w http.ResponseWriter, r *http.Request)
	GetProjectMembers(w http.ResponseWriter, r *http.Request)
	GetProjectMemberCount(w http.ResponseWriter, r *http.Request)
	RemoveProjectMember(w http.ResponseWriter, r *http.Request)
	RemoveProjectMembers(w http.ResponseWriter, r *http.Request)
	UpdateProjectMemberRole(w http.ResponseWriter, r *http.Request)
	UpdateProjectMembersRole(w http.ResponseWriter, r *http.Request)

	CreateProjectNamespace(w http.ResponseWriter, r *http.Request)
	IsProjectNamespaceExist(w http.ResponseWriter, r *http.Request)
	GetProjectNamespaces(w http.ResponseWriter, r *http.Request)
	GetProjectNamespace(w http.ResponseWriter, r *http.Request)
	UpdateProjectNamespace(w http.ResponseWriter, r *http.Request)
	DeleteProjectNamespace(w http.ResponseWriter, r *http.Request)

	SetFavoriteProject(w http.ResponseWriter, r *http.Request)
	SetFavoriteProjectNamespace(w http.ResponseWriter, r *http.Request)
	UnSetFavoriteProject(w http.ResponseWriter, r *http.Request)
	UnSetFavoriteProjectNamespace(w http.ResponseWriter, r *http.Request)

	GetProjectKubeconfig(w http.ResponseWriter, r *http.Request)
	GetProjectNamespaceK8sResources(w http.ResponseWriter, r *http.Request)
	GetProjectNamespaceResourcesUsage(w http.ResponseWriter, r *http.Request)
	GetProjectNamespaceKubeconfig(w http.ResponseWriter, r *http.Request)
}

func NewProjectHandler

func NewProjectHandler(u usecase.Usecase) IProjectHandler

type IRoleHandler

type IRoleHandler interface {
	CreateTksRole(w http.ResponseWriter, r *http.Request)
	ListTksRoles(w http.ResponseWriter, r *http.Request)
	GetTksRole(w http.ResponseWriter, r *http.Request)
	DeleteTksRole(w http.ResponseWriter, r *http.Request)
	UpdateTksRole(w http.ResponseWriter, r *http.Request)
	GetPermissionsByRoleId(w http.ResponseWriter, r *http.Request)
	UpdatePermissionsByRoleId(w http.ResponseWriter, r *http.Request)
	IsRoleNameExisted(w http.ResponseWriter, r *http.Request)

	GetUsersInRoleId(w http.ResponseWriter, r *http.Request)
	AppendUsersToRole(w http.ResponseWriter, r *http.Request)
	RemoveUsersFromRole(w http.ResponseWriter, r *http.Request)

	Admin_ListTksRoles(w http.ResponseWriter, r *http.Request)
	Admin_GetTksRole(w http.ResponseWriter, r *http.Request)
}

type IUserHandler

type IUserHandler interface {
	Create(w http.ResponseWriter, r *http.Request)
	List(w http.ResponseWriter, r *http.Request)
	Get(w http.ResponseWriter, r *http.Request)
	Delete(w http.ResponseWriter, r *http.Request)
	Update(w http.ResponseWriter, r *http.Request)
	UpdateUsers(w http.ResponseWriter, r *http.Request)
	ResetPassword(w http.ResponseWriter, r *http.Request)

	GetMyProfile(w http.ResponseWriter, r *http.Request)
	UpdateMyProfile(w http.ResponseWriter, r *http.Request)
	UpdateMyPassword(w http.ResponseWriter, r *http.Request)
	RenewPasswordExpiredDate(w http.ResponseWriter, r *http.Request)
	DeleteMyProfile(w http.ResponseWriter, r *http.Request)

	CheckId(w http.ResponseWriter, r *http.Request)
	CheckEmail(w http.ResponseWriter, r *http.Request)
	GetPermissionsByAccountId(w http.ResponseWriter, r *http.Request)

	// Admin
	Admin_Create(w http.ResponseWriter, r *http.Request)
	Admin_Delete(w http.ResponseWriter, r *http.Request)
	Admin_Update(w http.ResponseWriter, r *http.Request)
}

func NewUserHandler

func NewUserHandler(h usecase.Usecase) IUserHandler

type OrganizationHandler

type OrganizationHandler struct {
	// contains filtered or unexported fields
}

func NewOrganizationHandler

func NewOrganizationHandler(u usecase.Usecase) *OrganizationHandler

func (*OrganizationHandler) Admin_CreateOrganization

func (h *OrganizationHandler) Admin_CreateOrganization(w http.ResponseWriter, r *http.Request)

CreateOrganization godoc

@Tags			Organizations
@Summary		Create organization in Admin portal
@Description	Create organization in Admin portal
@Accept			json
@Produce		json
@Param			body	body		domain.CreateOrganizationRequest	true	"create organization request"
@Success		200		{object}	object
@Router			/admin/organizations [post]
@Security		JWT

func (*OrganizationHandler) Admin_DeleteOrganization

func (h *OrganizationHandler) Admin_DeleteOrganization(w http.ResponseWriter, r *http.Request)

DeleteOrganization godoc

@Tags			Organizations
@Summary		Delete organization
@Description	Delete organization
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	domain.DeleteOrganizationResponse
@Router			/organizations/{organizationId} [delete]
@Security		JWT

func (*OrganizationHandler) CheckOrganizationName

func (h *OrganizationHandler) CheckOrganizationName(w http.ResponseWriter, r *http.Request)

CheckOrganizationName godoc

@Tags			Organizations
@Summary		Check name for organization
@Description	Check name for organization
@Accept			json
@Produce		json
@Param			name	path		string	true	"name"
@Success		200		{object}	nil
@Router			/organizations/name/{name}/existence [GET]
@Security		JWT

func (*OrganizationHandler) GetOrganization

func (h *OrganizationHandler) GetOrganization(w http.ResponseWriter, r *http.Request)

GetOrganization godoc

@Tags			Organizations
@Summary		Get organization detail
@Description	Get organization detail
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	domain.GetOrganizationResponse
@Router			/organizations/{organizationId} [get]
@Security		JWT

func (*OrganizationHandler) GetOrganizations

func (h *OrganizationHandler) GetOrganizations(w http.ResponseWriter, r *http.Request)

GetOrganizations godoc

@Tags			Organizations
@Summary		Get organization list
@Description	Get organization list
@Accept			json
@Produce		json
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			soertColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filters		query		[]string	false	"filters"
@Success		200			{object}	[]domain.ListOrganizationResponse
@Router			/organizations [get]
@Security		JWT

func (*OrganizationHandler) UpdateOrganization

func (h *OrganizationHandler) UpdateOrganization(w http.ResponseWriter, r *http.Request)

UpdateOrganization godoc

@Tags			Organizations
@Summary		Update organization detail
@Description	Update organization detail
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"organizationId"
@Param			body			body		domain.UpdateOrganizationRequest	true	"update organization request"
@Success		200				{object}	domain.UpdateOrganizationResponse
@Router			/organizations/{organizationId} [put]
@Security		JWT

func (*OrganizationHandler) UpdatePrimaryCluster

func (h *OrganizationHandler) UpdatePrimaryCluster(w http.ResponseWriter, r *http.Request)

UpdatePrimaryCluster godoc

@Tags			Organizations
@Summary		Update primary cluster
@Description	Update primary cluster
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"organizationId"
@Param			body			body		domain.UpdatePrimaryClusterRequest	true	"update primary cluster request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/primary-cluster [patch]
@Security		JWT

type PermissionHandler

type PermissionHandler struct {
	// contains filtered or unexported fields
}

func (PermissionHandler) GetPermissionTemplates

func (h PermissionHandler) GetPermissionTemplates(w http.ResponseWriter, r *http.Request)

GetPermissionTemplates godoc

@Tags			Permission
@Summary		Get Permission Templates
@Description	Get Permission Templates
@Accept			json
@Produce		json
@Success		200	{object}	domain.GetPermissionTemplatesResponse
@Router			/permissions/templates [get]
@Security		JWT

type PolicyHandler

type PolicyHandler struct {
	// contains filtered or unexported fields
}

func (*PolicyHandler) AddPoliciesForStack

func (h *PolicyHandler) AddPoliciesForStack(w http.ResponseWriter, r *http.Request)

AddPoliciesForStack godoc

@Tags			Policy
@Summary		[AddPoliciesForStack] 특정 스택의 정책 목록 추가
@Description	특정 스택의 정책 목록을 정책 식별자 리스트로 지정해서 추가한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"조직 식별자(o로 시작)"
@Param			stackId			path		string								true	"스택 식별자"
@Param			body			body		domain.AddPoliciesForStackRequest	true	"add policies for stack request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/stacks/{stackId}/policies [post]
@Security		JWT

func (*PolicyHandler) CreatePolicy

func (h *PolicyHandler) CreatePolicy(w http.ResponseWriter, r *http.Request)

CreatePolicy godoc

@Tags			Policy
@Summary		[CreatePolicy] 정책 생성
@Description	새로운 정책을 생성한다. targetClusterIds가 명시되지 않으면 정책은 활성화되지 않은 상태로 생성된다. 다른 클러스터에 동일한 정책이 존재한다면 정책 생성이 아닌 정책 업데이트를 통해 targetClusterIds를 수정해야 한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"조직 식별자(o로 시작)"
@Param			body			body		domain.CreatePolicyRequest	true	"create  policy request"
@Success		200				{object}	domain.CreatePolicyResponse
@Router			/organizations/{organizationId}/policies [post]
@Security		JWT

func (*PolicyHandler) DeletePoliciesForStack

func (h *PolicyHandler) DeletePoliciesForStack(w http.ResponseWriter, r *http.Request)

DeletePoliciesForStack godoc

@Tags			Policy
@Summary		[DeletePoliciesForStack] 특정 스택의 정책 제거
@Description	특정 스택에서 정책 식별자로 지정된 정책을 제거한다.
@Accept			json
@Produce		json
@Param			organizationId	path	string									true	"조직 식별자(o로 시작)"
@Param			stackId			path	string									true	"스택 식별자"
@Param			body			body	domain.DeletePoliciesForStackRequest	true	"delete policies for stack request"
@Router			/organizations/{organizationId}/stacks/{stackId}/policies [put]
@Security		JWT

func (*PolicyHandler) DeletePolicy

func (h *PolicyHandler) DeletePolicy(w http.ResponseWriter, r *http.Request)

DeletePolicy godoc

@Tags			Policy
@Summary		[DeletePolicy] 정책 삭제
@Description	정첵을 삭제한다. 정책이 적용된 클러스터가 있으면 삭제되지 않으므로 삭제 전 적용된 클러스터가 비어있어야 한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"조직 식별자(o로 시작)"
@Param			policyId		path		string	true	"정책 식별자(uuid)"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/policies/{policyId} [delete]
@Security		JWT

func (*PolicyHandler) ExistsPolicyName

func (h *PolicyHandler) ExistsPolicyName(w http.ResponseWriter, r *http.Request)

ExistsPolicyName godoc

@Tags			Policy
@Summary		[ExistsPolicyName] 정책 이름 존재 여부 확인
@Description	해당 이름을 가진 정책이 이미 존재하는지 확인한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"조직 식별자(o로 시작)"
@Param			policyName		path		string	true	"정책 이름"
@Success		200				{object}	domain.CheckExistedResponse
@Router			/organizations/{organizationId}/policies/name/{policyName}/existence [get]
@Security		JWT

func (*PolicyHandler) ExistsPolicyResourceName

func (h *PolicyHandler) ExistsPolicyResourceName(w http.ResponseWriter, r *http.Request)

ExistsPolicyResourceName godoc

@Tags			Policy
@Summary		[ExistsPolicyResourceName] 정책 자원 이름 존재 여부 확인
@Description	해당 자원 이름을 가진 정책이 이미 존재하는지 확인한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyResourceName	path		string	true	"정책 자원 이름(쿠버네티스 배포 시 자원 이름)"
@Success		200					{object}	domain.CheckExistedResponse
@Router			/organizations/{organizationId}/policies/resource-name/{policyResourceName}/existence [get]
@Security		JWT

func (*PolicyHandler) GetMandatoryPolicies

func (h *PolicyHandler) GetMandatoryPolicies(w http.ResponseWriter, r *http.Request)

GetMandatoryPolicies godoc

@Tags			Policy
@Summary		[GetMandatoryPolicies] 필수 정책 템플릿, 정책을 조회
@Description	템플릿, 정책이 필수 인지 여부를 조회한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"조직 식별자(o로 시작)"
@Success		200				{object}	domain.GetMandatoryPoliciesResponse
@Router			/organizations/{organizationId}/mandatory-policies [get]
@Security		JWT

func (*PolicyHandler) GetPolicy

func (h *PolicyHandler) GetPolicy(w http.ResponseWriter, r *http.Request)

GetPolicy godoc

@Tags			Policy
@Summary		[GetPolicy] 정책 조회
@Description	정책 정보를 조회한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"조직 식별자(o로 시작)"
@Param			policyId		path		string	true	"정책 식별자(uuid)"
@Success		200				{object}	domain.GetPolicyResponse
@Router			/organizations/{organizationId}/policies/{policyId} [get]
@Security		JWT

func (*PolicyHandler) GetPolicyEdit

func (h *PolicyHandler) GetPolicyEdit(w http.ResponseWriter, r *http.Request)

GetPolicyEdit godoc

@Tags			Policy
@Summary		[GetPolicy] 정책 조회
@Description	정책 정보를 조회한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"조직 식별자(o로 시작)"
@Param			policyId		path		string	true	"정책 식별자(uuid)"
@Success		200				{object}	domain.GetPolicyResponse
@Router			/organizations/{organizationId}/policies/{policyId}/edit [get]
@Security		JWT

func (*PolicyHandler) GetPolicyStatistics

func (h *PolicyHandler) GetPolicyStatistics(w http.ResponseWriter, r *http.Request)

GetPolicyStatistics godoc

@Tags			Policy
@Summary		[GetPolicyStatistics] 정책 템플릿, 정책 통계 조회
@Description	템플릿, 정책의 통계를 조회한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"조직 식별자(o로 시작)"
@Success		200				{object}	domain.PolicyStatisticsResponse
@Router			/organizations/{organizationId}/policy-statistics [get]
@Security		JWT

func (*PolicyHandler) GetStackPolicyTemplateStatus

func (h *PolicyHandler) GetStackPolicyTemplateStatus(w http.ResponseWriter, r *http.Request)

GetStackPolicyTemplateStatus godoc

@Tags			StackPolicyStatus
@Summary		[GetStackPolicyTemplateStatus] 클러스터 템플릿 상태 상세 조회
@Description	템플릿의 클러스터 버전 등 상태를 조회한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			stackId				path		string	true	"스택 식별자"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	domain.GetStackPolicyTemplateStatusResponse
@Router			/organizations/{organizationId}/stacks/{stackId}/policy-templates/{policyTemplateId} [get]
@Security		JWT

func (*PolicyHandler) ListPolicy

func (h *PolicyHandler) ListPolicy(w http.ResponseWriter, r *http.Request)

ListPolicy godoc

@Tags			Policy
@Summary		[ListPolicy] 정책 목록 조회
@Description	정책 목록을 조회한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"조직 식별자(o로 시작)"
@Param			filledParameter	query		string		false	"filledParameter"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			sortColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.ListPolicyResponse
@Router			/organizations/{organizationId}/policies [get]
@Security		JWT

func (*PolicyHandler) ListStackPolicyStatus

func (h *PolicyHandler) ListStackPolicyStatus(w http.ResponseWriter, r *http.Request)

ListStackPolicyStatus godoc

@Tags			StackPolicyStatus
@Summary		[ListStackPolicyStatus] 클러스터의 정책과 정책 템플릿, 버전 조회
@Description	클러스터의 정책과 정책 템플릿, 버전 등을 포함한 상태 목록을 조회한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"조직 식별자(o로 시작)"
@Param			stackId			path		string		true	"스택 식별자"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			sortColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.ListStackPolicyStatusResponse
@Router			/organizations/{organizationId}/stacks/{stackId}/policy-status [get]
@Security		JWT

func (*PolicyHandler) SetMandatoryPolicies

func (h *PolicyHandler) SetMandatoryPolicies(w http.ResponseWriter, r *http.Request)

SetMandatoryPolicies godoc

@Tags			Policy
@Summary		[SetMandatoryPolicies] 필수 정책 템플릿, 정책을 설정
@Description	템플릿, 정책이 필수 인지 여부를 설정한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"조직 식별자(o로 시작)"
@Param			body			body		domain.SetMandatoryPoliciesRequest	true	"update mandatory policy/policy template request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/mandatory-policies [patch]
@Security		JWT

func (*PolicyHandler) StackPolicyStatistics

func (h *PolicyHandler) StackPolicyStatistics(w http.ResponseWriter, r *http.Request)

StackPolicyStatistics godoc

@Tags			StackPolicyStatus
@Summary		[ListStackPolicyStatus] 클러스터의 정책과 정책 템플릿, 버전 조회
@Description	클러스터의 정책과 정책 템플릿, 버전 등을 포함한 상태 목록을 조회한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"조직 식별자(o로 시작)"
@Param			stackId			path		string		true	"스택 식별자"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			sortColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.StackPolicyStatistics
@Router			/organizations/{organizationId}/stacks/{stackId}/statistics [get]
@Security		JWT

func (*PolicyHandler) UpdatePoliciesForStack

func (h *PolicyHandler) UpdatePoliciesForStack(w http.ResponseWriter, r *http.Request)

func (*PolicyHandler) UpdatePolicy

func (h *PolicyHandler) UpdatePolicy(w http.ResponseWriter, r *http.Request)

UpdatePolicy godoc

@Tags			Policy
@Summary		[UpdatePolicy] 정책을 업데이트
@Description	정책의 내용을 업데이트 한다. 업데이트할 필드만 명시하면 된다.
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"조직 식별자(o로 시작)"
@Param			policyId		path		string						true	"정책 식별자(uuid)"
@Param			body			body		domain.UpdatePolicyRequest	true	"update policy set request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/policies/{policyId} [patch]
@Security		JWT

func (*PolicyHandler) UpdatePolicyTargetClusters

func (h *PolicyHandler) UpdatePolicyTargetClusters(w http.ResponseWriter, r *http.Request)

UpdatePolicyTargetClusters godoc

@Tags			Policy
@Summary		[UpdatePolicyTargetClusters] 정책 적용 대상 클러스터 수정
@Description	정책 적용 대상 클러스터를 수정한다. 추가할 클러스터 목록과 제거할 클러스터 목록 중 하나만 명시되어야 한다. 현재 정책이 배포된 클러스터를 확인하지 않고도 특정 클러스터를 추가하거나 제거할 수 있는 편의 API이다.
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"조직 식별자(o로 시작)"
@Param			policyId		path		string								true	"정책 식별자(uuid)"
@Param			body			body		domain.UpdatePolicyClustersRequest	true	"update policy set request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/policies/{policyId}/clusters [patch]
@Security		JWT

func (*PolicyHandler) UpdateStackPolicyTemplateStatus

func (h *PolicyHandler) UpdateStackPolicyTemplateStatus(w http.ResponseWriter, r *http.Request)

UpdateStackPolicyTemplateStatus godoc

@Tags			StackPolicyStatus
@Summary		[UpdateStackPolicyTemplateStatus] 템플릿 버전 업데이트
@Description	해당 템플릿의 버전 업데이트 및 연관된 정책의 새 기본값을 설정한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string											true	"조직 식별자(o로 시작)"
@Param			stackId				path		string											true	"스택 식별자"
@Param			policyTemplateId	path		string											true	"정책 템플릿 식별자(uuid)"
@Param			body				body		domain.UpdateStackPolicyTemplateStatusRequest	true	"update stack policy template status request"
@Success		200					{object}	nil
@Router			/organizations/{organizationId}/stacks/{stackId}/policy-templates/{policyTemplateId} [patch]
@Security		JWT

type PolicyNotificationHandler

type PolicyNotificationHandler struct {
	// contains filtered or unexported fields
}

func NewPolicyNotificationHandler

func NewPolicyNotificationHandler(h usecase.Usecase) *PolicyNotificationHandler

func (*PolicyNotificationHandler) GetPolicyNotification

func (h *PolicyNotificationHandler) GetPolicyNotification(w http.ResponseWriter, r *http.Request)

GetPolicyNotification godoc

@Tags			PolicyNotifications
@Summary		Get PolicyNotification
@Description	Get PolicyNotification
@Accept			json
@Produce		json
@Param			organizationId			path		string	true	"organizationId"
@Param			policyNotificationId	path		string	true	"policyNotificationId"
@Success		200						{object}	domain.GetPolicyNotificationResponse
@Router			/organizations/{organizationId}/policy-notifications/{policyNotificationId} [get]
@Security		JWT

func (*PolicyNotificationHandler) GetPolicyNotifications

func (h *PolicyNotificationHandler) GetPolicyNotifications(w http.ResponseWriter, r *http.Request)

GetPolicyNotification godoc

@Tags			PolicyNotifications
@Summary		Get PolicyNotifications
@Description	Get PolicyNotifications
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"organizationId"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.GetPolicyNotificationsResponse
@Router			/organizations/{organizationId}/policy-notifications [get]
@Security		JWT

type PolicyTemplateHandler

type PolicyTemplateHandler struct {
	// contains filtered or unexported fields
}

func (*PolicyTemplateHandler) Admin_AddPermittedPolicyTemplatesForOrganization

func (h *PolicyTemplateHandler) Admin_AddPermittedPolicyTemplatesForOrganization(w http.ResponseWriter, r *http.Request)

Admin_AddPermittedPolicyTemplatesForOrganization godoc

@Tags			PolicyTemplate
@Summary		[Admin_AddPermittedPolicyTemplatesForOrganization] 특정 조직에 대해 허용된 tks 템플릿 목록 추가
@Description	특정 조직에 대해 허용된 tks 템플릿 목록을 추가한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string															true	"조직 식별자(o로 시작)"
@Param			body			body		admin_domain.AddPermittedPolicyTemplatesForOrganizationRequest	true	"update pemitted policy template request"
@Success		200				{object}	nil
@Router			/admin/organizations/{organizationId}/policyTemplates [post]
@Security		JWT

func (*PolicyTemplateHandler) Admin_CreatePolicyTemplate

func (h *PolicyTemplateHandler) Admin_CreatePolicyTemplate(w http.ResponseWriter, r *http.Request)

Admin_CreatePolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[Admin_CreatePolicyTemplate] 정책 템플릿 신규 생성
@Description	정책 템플릿을 신규 생성(v1.0.0을 생성)한다.
@Accept			json
@Produce		json
@Param			body	body		admin_domain.CreatePolicyTemplateRequest	true	"create policy template request"
@Success		200		{object}	admin_domain.CreatePolicyTemplateReponse
@Router			/admin/policy-templates [post]
@Security		JWT

func (*PolicyTemplateHandler) Admin_CreatePolicyTemplateVersion

func (h *PolicyTemplateHandler) Admin_CreatePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)

Admin_CreatePolicyTemplateVersion godoc

@Tags			PolicyTemplate
@Summary		[Admin_CreatePolicyTemplateVersion] 정책 템플릿 특정 버전 저장
@Description	해당 식별자를 가진 정책 템플릿의 특정 버전을 저장한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string											true	"정책 템플릿 식별자(uuid)"
@Param			body				body		admin_domain.CreatePolicyTemplateVersionRequest	true	"create policy template version request"
@Success		200					{object}	admin_domain.CreatePolicyTemplateVersionResponse
@Router			/admin/policy-templates/{policyTemplateId}/versions [post]
@Security		JWT

func (*PolicyTemplateHandler) Admin_DeletePermittedPolicyTemplatesForOrganization

func (h *PolicyTemplateHandler) Admin_DeletePermittedPolicyTemplatesForOrganization(w http.ResponseWriter, r *http.Request)

Admin_DeletePermittedPolicyTemplatesForOrganization godoc

@Tags			PolicyTemplate
@Summary		[Admin_DeletePermittedPolicyTemplatesForOrganization] 특정 조직에 대해 허용된 tks 템플릿 목록 제거
@Description	특정 조직에 대해 허용된 tks 템플릿의 허용 상태를 해제(제거)한다. tks 우형 템플릿에 대해서만 동작하고 organization 유형 템플릿에 대해서는 거부된다.
@Accept			json
@Produce		json
@Param			organizationId	path		string																true	"조직 식별자(o로 시작)"
@Param			body			body		admin_domain.DeletePermittedPolicyTemplatesForOrganizationRequest	true	"delete pemitted policy template request"
@Success		200				{object}	nil
@Router			/admin/organizations/{organizationId}/policyTemplates [put]
@Security		JWT

func (*PolicyTemplateHandler) Admin_DeletePolicyTemplate

func (h *PolicyTemplateHandler) Admin_DeletePolicyTemplate(w http.ResponseWriter, r *http.Request)

Admin_DeletePolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[Admin_DeletePolicyTemplate] 정책 템플릿 삭제
@Description	정책 템플릿을 삭제한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	nil
@Router			/admin/policy-templates/{policyTemplateId} [delete]
@Security		JWT

func (*PolicyTemplateHandler) Admin_DeletePolicyTemplateVersion

func (h *PolicyTemplateHandler) Admin_DeletePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)

Admin_DeletePolicyTemplateVersion godoc

@Tags			PolicyTemplate
@Summary		[Admin_DeletePolicyTemplateVersion] 정책 템플릿 특정 버전 삭제
@Description	해당 식별자를 가진 정책 템플릿의 특정 버전을 삭제한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Param			version				path		string	true	"삭제할 버전(v0.0.0 형식)"
@Success		200					{object}	nil
@Router			/admin/policy-templates/{policyTemplateId}/versions/{version} [delete]
@Security		JWT

func (*PolicyTemplateHandler) Admin_ExistsPolicyTemplateKind

func (h *PolicyTemplateHandler) Admin_ExistsPolicyTemplateKind(w http.ResponseWriter, r *http.Request)

Admin_ExistsPolicyTemplateKind godoc

@Tags			PolicyTemplate
@Summary		[Admin_ExistsPolicyTemplateKind] 정책 템플릿 유형 존재 여부 확인
@Description	해당 유형을 가진 정책 템플릿이 이미 존재하는지 확인한다.
@Accept			json
@Produce		json
@Param			policyTemplateKind	path		string	true	"정책 템플릿 이름"
@Success		200					{object}	admin_domain.ExistsPolicyTemplateKindResponse
@Router			/admin/policy-templates/kind/{policyTemplateKind}/existence [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_ExistsPolicyTemplateName

func (h *PolicyTemplateHandler) Admin_ExistsPolicyTemplateName(w http.ResponseWriter, r *http.Request)

Admin_ExistsPolicyTemplateName godoc

@Tags			PolicyTemplate
@Summary		[Admin_ExistsPolicyTemplateName] 정책 템플릿 아름 존재 여부 확인
@Description	해당 이름을 가진 정책 템플릿이 이미 존재하는지 확인한다.
@Accept			json
@Produce		json
@Param			policyTemplateName	path		string	true	"정책 템플릿 이름"
@Success		200					{object}	admin_domain.ExistsPolicyTemplateNameResponse
@Router			/admin/policy-templates/name/{policyTemplateName}/existence [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_ExtractParameters

func (h *PolicyTemplateHandler) Admin_ExtractParameters(w http.ResponseWriter, r *http.Request)

Admin_ExtractParameters godoc

@Tags			PolicyTemplate
@Summary		[Admin_ExtractParameters] 정책 템플릿 파라미터 추출
@Description	정책 템플릿 파라미터를 기존 버전의 수정불가능한 파라미터를 포함해서 추출한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string									true	"정책 템플릿 식별자(uuid)"
@Param			version				path		string									true	"버전(v0.0.0 형식)"
@Param			body				body		admin_domain.ExtractParametersRequest	true	"Rego 코드"
@Success		200					{object}	admin_domain.ExtractParametersResponse
@Router			/admin/policy-templates/{policyTemplateId}/versions/{version}/extract-parameters [post]
@Security		JWT

func (*PolicyTemplateHandler) Admin_GetPolicyTemplate

func (h *PolicyTemplateHandler) Admin_GetPolicyTemplate(w http.ResponseWriter, r *http.Request)

Admin_GetPolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[Admin_GetPolicyTemplate] 정책 템플릿 조회(최신 버전)
@Description	해당 식별자를 가진 정책 템플릿의 최신 버전을 조회한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	admin_domain.GetPolicyTemplateResponse
@Router			/admin/policy-templates/{policyTemplateId} [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_GetPolicyTemplateDeploy

func (h *PolicyTemplateHandler) Admin_GetPolicyTemplateDeploy(w http.ResponseWriter, r *http.Request)

Admin_GetPolicyTemplateDeploy godoc

@Tags			PolicyTemplate
@Summary		[Admin_GetPolicyTemplateDeploy] 정책 템플릿 클러스터 별 설치 버전 조회
@Description	해당 식별자를 가진 정책 템플릿의 정책 템플릿 클러스터 별 설치 버전을 조회한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	admin_domain.GetPolicyTemplateDeployResponse
@Router			/admin/policy-templates/{policyTemplateId}/deploy [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_GetPolicyTemplateVersion

func (h *PolicyTemplateHandler) Admin_GetPolicyTemplateVersion(w http.ResponseWriter, r *http.Request)

Admin_GetPolicyTemplateVersion godoc

@Tags			PolicyTemplate
@Summary		[Admin_GetPolicyTemplateVersion] 정책 템플릿 특정 버전 조회
@Description	해당 식별자를 가진 정책 템플릿의 특정 버전을 조회한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Param			version				path		string	true	"조회할 버전(v0.0.0 형식)"
@Success		200					{object}	admin_domain.GetPolicyTemplateVersionResponse
@Router			/admin/policy-templates/{policyTemplateId}/versions/{version} [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_ListPolicyTemplate

func (h *PolicyTemplateHandler) Admin_ListPolicyTemplate(w http.ResponseWriter, r *http.Request)

Admin_ListPolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[Admin_ListPolicyTemplate] 정책 템플릿 목록 조회
@Description	정책 템플릿 목록을 조회한다. 정책 템플릿 목록 조회 결과는 최신 템플릿 버전 목록만 조회된다.
@Accept			json
@Produce		json
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			sortColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filters		query		[]string	false	"filters"
@Success		200			{object}	admin_domain.ListPolicyTemplateResponse
@Router			/admin/policy-templates [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_ListPolicyTemplateStatistics

func (h *PolicyTemplateHandler) Admin_ListPolicyTemplateStatistics(w http.ResponseWriter, r *http.Request)

Admin_ListPolicyTemplateStatistics godoc

@Tags			PolicyTemplate
@Summary		[Admin_ListPolicyTemplateStatistics] 정책 템플릿 사용 카운트 조회
@Description	해당 식별자를 가진 정책 템플릿의 최신 버전을 조회한다. 전체 조직의 통계를 조회하려면 organizationId를 tks로 설정한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	admin_domain.ListPolicyTemplateStatisticsResponse
@Router			/admin/policy-templates/{policyTemplateId}/statistics [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_ListPolicyTemplateVersions

func (h *PolicyTemplateHandler) Admin_ListPolicyTemplateVersions(w http.ResponseWriter, r *http.Request)

Admin_ListPolicyTemplateVersions godoc

@Tags			PolicyTemplate
@Summary		[Admin_ListPolicyTemplateVersions] 정책 템플릿 버전목록 조회
@Description	해당 식별자를 가진 정책 템플릿의 최신 버전을 조회한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	admin_domain.ListPolicyTemplateVersionsResponse
@Router			/admin/policy-templates/{policyTemplateId}/versions [get]
@Security		JWT

func (*PolicyTemplateHandler) Admin_UpdatePermittedPolicyTemplatesForOrganization

func (h *PolicyTemplateHandler) Admin_UpdatePermittedPolicyTemplatesForOrganization(w http.ResponseWriter, r *http.Request)

func (*PolicyTemplateHandler) Admin_UpdatePolicyTemplate

func (h *PolicyTemplateHandler) Admin_UpdatePolicyTemplate(w http.ResponseWriter, r *http.Request)

Admin_UpdatePolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[Admin_UpdatePolicyTemplate] 정책 템플릿 업데이트
@Description	정책 템플릿의 업데이트 가능한 필드들을 업데이트한다.
@Accept			json
@Produce		json
@Param			policyTemplateId	path		string										true	"정책 템플릿 식별자(uuid)"
@Param			body				body		admin_domain.UpdatePolicyTemplateRequest	true	"update  policy template request"
@Success		200					{object}	nil
@Router			/admin/policy-templates/{policyTemplateId} [patch]
@Security		JWT

func (*PolicyTemplateHandler) CreatePolicyTemplate

func (h *PolicyTemplateHandler) CreatePolicyTemplate(w http.ResponseWriter, r *http.Request)

CreatePolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[CreatePolicyTemplate] 정책 템플릿 신규 생성
@Description	정책 템플릿을 신규 생성(v1.0.0을 생성)한다.
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"조직 식별자(o로 시작)"
@Param			body			body		domain.CreatePolicyTemplateRequest	true	"create policy template request"
@Success		200				{object}	domain.CreatePolicyTemplateReponse
@Router			/organizations/{organizationId}/policy-templates [post]
@Security		JWT

func (*PolicyTemplateHandler) CreatePolicyTemplateVersion

func (h *PolicyTemplateHandler) CreatePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)

CreatePolicyTemplateVersion godoc

@Tags			PolicyTemplate
@Summary		[CreatePolicyTemplateVersion] 정책 템플릿 특정 버전 저장
@Description	해당 식별자를 가진 정책 템플릿의 특정 버전을 저장한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string										true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string										true	"정책 템플릿 식별자(uuid)"
@Param			body				body		domain.CreatePolicyTemplateVersionRequest	true	"create policy template version request"
@Success		200					{object}	domain.CreatePolicyTemplateVersionResponse
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId}/versions [post]
@Security		JWT

func (*PolicyTemplateHandler) DeletePolicyTemplate

func (h *PolicyTemplateHandler) DeletePolicyTemplate(w http.ResponseWriter, r *http.Request)

DeletePolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[DeletePolicyTemplate] 정책 템플릿 삭제
@Description	정책 템플릿을 삭제한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	nil
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId} [delete]
@Security		JWT

func (*PolicyTemplateHandler) DeletePolicyTemplateVersion

func (h *PolicyTemplateHandler) DeletePolicyTemplateVersion(w http.ResponseWriter, r *http.Request)

DeletePolicyTemplateVersion godoc

@Tags			PolicyTemplate
@Summary		[DeletePolicyTemplateVersion] 정책 템플릿 특정 버전 삭제
@Description	해당 식별자를 가진 정책 템플릿의 특정 버전을 삭제한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Param			version				path		string	true	"삭제할 버전(v0.0.0 형식)"
@Success		200					{object}	nil
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId}/versions/{version} [delete]
@Security		JWT

func (*PolicyTemplateHandler) ExistsPolicyTemplateKind

func (h *PolicyTemplateHandler) ExistsPolicyTemplateKind(w http.ResponseWriter, r *http.Request)

ExistsPolicyTemplateKind godoc

@Tags			PolicyTemplate
@Summary		[ExistsPolicyTemplateKind] 정책 템플릿 유형 존재 여부 확인
@Description	해당 유형을 가진 정책 템플릿이 이미 존재하는지 확인한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateKind	path		string	true	"정책 템플릿 이름"
@Success		200					{object}	domain.ExistsPolicyTemplateKindResponse
@Router			/organizations/{organizationId}/policy-templates/kind/{policyTemplateKind}/existence [get]
@Security		JWT

func (*PolicyTemplateHandler) ExistsPolicyTemplateName

func (h *PolicyTemplateHandler) ExistsPolicyTemplateName(w http.ResponseWriter, r *http.Request)

ExistsPolicyTemplateName godoc

@Tags			PolicyTemplate
@Summary		[ExistsPolicyTemplateName] 정책 템플릿 아름 존재 여부 확인
@Description	해당 이름을 가진 정책 템플릿이 이미 존재하는지 확인한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateName	path		string	true	"정책 템플릿 이름"
@Success		200					{object}	domain.ExistsPolicyTemplateNameResponse
@Router			/organizations/{organizationId}/policy-templates/name/{policyTemplateName}/existence [get]
@Security		JWT

func (*PolicyTemplateHandler) ExtractParameters

func (h *PolicyTemplateHandler) ExtractParameters(w http.ResponseWriter, r *http.Request)

ExtractParameters godoc

@Tags			PolicyTemplate
@Summary		[ExtractParameters] 정책 템플릿 파라미터 추출
@Description	정책 템플릿 파라미터를 기존 버전의 수정불가능한 파라미터를 포함해서 추출한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string							true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string							true	"정책 템플릿 식별자(uuid)"
@Param			version				path		string							true	"버전(v0.0.0 형식)"
@Param			body				body		domain.ExtractParametersRequest	true	"Rego 코드"
@Success		200					{object}	domain.ExtractParametersResponse
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId}/versions/{version}/extract-parameters [post]
@Security		JWT

func (*PolicyTemplateHandler) GetPolicyTemplate

func (h *PolicyTemplateHandler) GetPolicyTemplate(w http.ResponseWriter, r *http.Request)

GetPolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[GetPolicyTemplate] 정책 템플릿 조회(최신 버전)
@Description	해당 식별자를 가진 정책 템플릿의 최신 버전을 조회한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	domain.GetPolicyTemplateResponse
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId} [get]
@Security		JWT

func (*PolicyTemplateHandler) GetPolicyTemplateDeploy

func (h *PolicyTemplateHandler) GetPolicyTemplateDeploy(w http.ResponseWriter, r *http.Request)

GetPolicyTemplateDeploy godoc

@Tags			PolicyTemplate
@Summary		[GetPolicyTemplateDeploy] 정책 템플릿 클러스터 별 설치 버전 조회
@Description	해당 식별자를 가진 정책 템플릿의 정책 템플릿 클러스터 별 설치 버전을 조회한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	domain.GetPolicyTemplateDeployResponse
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId}/deploy [get]
@Security		JWT

func (*PolicyTemplateHandler) GetPolicyTemplateVersion

func (h *PolicyTemplateHandler) GetPolicyTemplateVersion(w http.ResponseWriter, r *http.Request)

GetPolicyTemplateVersion godoc

@Tags			PolicyTemplate
@Summary		[GetPolicyTemplateVersion] 정책 템플릿 특정 버전 조회
@Description	해당 식별자를 가진 정책 템플릿의 특정 버전을 조회한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Param			version				path		string	true	"조회할 버전(v0.0.0 형식)"
@Success		200					{object}	domain.GetPolicyTemplateVersionResponse
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId}/versions/{version} [get]
@Security		JWT

func (*PolicyTemplateHandler) ListPolicyTemplate

func (h *PolicyTemplateHandler) ListPolicyTemplate(w http.ResponseWriter, r *http.Request)

ListPolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[ListPolicyTemplate] 정책 템플릿 목록 조회
@Description	정책 템플릿 목록을 조회한다. 정책 템플릿 목록 조회 결과는 최신 템플릿 버전 목록만 조회된다.
@Accept			json
@Produce		json
@Param			limit			query		string		false	"pageSize"
@Param			page			query		string		false	"pageNumber"
@Param			sortColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Param			organizationId	path		string		true	"조직 식별자(o로 시작)"
@Success		200				{object}	domain.ListPolicyTemplateResponse
@Router			/organizations/{organizationId}/policy-templates [get]
@Security		JWT

func (*PolicyTemplateHandler) ListPolicyTemplateStatistics

func (h *PolicyTemplateHandler) ListPolicyTemplateStatistics(w http.ResponseWriter, r *http.Request)

ListPolicyTemplateStatistics godoc

@Tags			PolicyTemplate
@Summary		[ListPolicyTemplateStatistics] 정책 템플릿 사용 카운트 조회
@Description	해당 식별자를 가진 정책 템플릿의 최신 버전을 조회한다. 전체 조직의 통계를 조회하려면 organizationId를 tks로 설정한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	domain.ListPolicyTemplateStatisticsResponse
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId}/statistics [get]
@Security		JWT

func (*PolicyTemplateHandler) ListPolicyTemplateVersions

func (h *PolicyTemplateHandler) ListPolicyTemplateVersions(w http.ResponseWriter, r *http.Request)

ListPolicyTemplateVersions godoc

@Tags			PolicyTemplate
@Summary		[ListPolicyTemplateVersions] 정책 템플릿 버전목록 조회
@Description	해당 식별자를 가진 정책 템플릿의 최신 버전을 조회한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string	true	"정책 템플릿 식별자(uuid)"
@Success		200					{object}	domain.ListPolicyTemplateVersionsResponse
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId}/versions [get]
@Security		JWT

func (*PolicyTemplateHandler) RegoCompile

func (h *PolicyTemplateHandler) RegoCompile(w http.ResponseWriter, r *http.Request)

CompileRego godoc

@Tags			PolicyTemplate
@Summary		[CompileRego] Rego 코드 컴파일 및 파라미터 파싱
@Description	Rego 코드 컴파일 및 파라미터 파싱을 수행한다. 파라미터 파싱을 위해서는 먼저 컴파일이 성공해야 하며, parseParameter를 false로 하면 컴파일만 수행할 수 있다.
@Accept			json
@Produce		json
@Param			parseParameter	query		bool						true	"파라미터 파싱 여부"
@Param			body			body		domain.RegoCompileRequest	true	"Rego 코드"
@Success		200				{object}	domain.RegoCompileResponse
@Router			/policy-templates/rego-compile [post]
@Security		JWT

func (*PolicyTemplateHandler) UpdatePolicyTemplate

func (h *PolicyTemplateHandler) UpdatePolicyTemplate(w http.ResponseWriter, r *http.Request)

UpdatePolicyTemplate godoc

@Tags			PolicyTemplate
@Summary		[UpdatePolicyTemplate] 정책 템플릿 업데이트
@Description	정책 템플릿의 업데이트 가능한 필드들을 업데이트한다.
@Accept			json
@Produce		json
@Param			organizationId		path		string								true	"조직 식별자(o로 시작)"
@Param			policyTemplateId	path		string								true	"정책 템플릿 식별자(uuid)"
@Param			body				body		domain.UpdatePolicyTemplateRequest	true	"update  policy template request"
@Success		200					{object}	nil
@Router			/organizations/{organizationId}/policy-templates/{policyTemplateId} [patch]
@Security		JWT

type ProjectHandler

type ProjectHandler struct {
	// contains filtered or unexported fields
}

func (ProjectHandler) AddProjectMember

func (p ProjectHandler) AddProjectMember(w http.ResponseWriter, r *http.Request)

AddProjectMember godoc

@Tags			Projects
@Summary		Add project member to project
@Description	Add project member to project
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"Organization ID"
@Param			projectId		path		string							true	"Project ID"
@Param			request			body		domain.AddProjectMemberRequest	true	"Request body to add project member"
@Success		200				{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members [post]
@Security		JWT

func (ProjectHandler) Admin_GetProjects

func (p ProjectHandler) Admin_GetProjects(w http.ResponseWriter, r *http.Request)

Admin_GetProjects godoc

@Tags			Projects
@Summary		Get projects as admin
@Description	Get projects as admin
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectName		query		string	false	"Project Name"
@Success		200				{object}	domain.GetProjectsResponse
@Router			/admin/organizations/{organizationId}/projects [get]
@Security		JWT

func (ProjectHandler) CreateProject

func (p ProjectHandler) CreateProject(w http.ResponseWriter, r *http.Request)

CreateProject godoc

@Tags			Projects
@Summary		Create new project
@Description	Create new project
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"Organization ID"
@Param			request			body		domain.CreateProjectRequest	true	"Request body to create project"
@Success		200				{object}	domain.CreateProjectResponse
@Router			/organizations/{organizationId}/projects [post]
@Security		JWT

func (ProjectHandler) CreateProjectNamespace

func (p ProjectHandler) CreateProjectNamespace(w http.ResponseWriter, r *http.Request)

CreateProjectNamespace godoc

@Tags			Projects
@Summary		Create project namespace
@Description	Create project namespace
@Accept			json
@Produce		json
@Param			organizationId	path		string									true	"Organization ID"
@Param			projectId		path		string									true	"Project ID"
@Param			request			body		domain.CreateProjectNamespaceRequest	true	"Request body to create project namespace"
@Success		200				{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces [post]
@Security		JWT

func (ProjectHandler) DeleteProject

func (p ProjectHandler) DeleteProject(w http.ResponseWriter, r *http.Request)

func (ProjectHandler) DeleteProjectNamespace

func (p ProjectHandler) DeleteProjectNamespace(w http.ResponseWriter, r *http.Request)

DeleteProjectNamespace godoc

@Tags			Projects
@Summary		Delete project namespace
@Description	Delete project namespace
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"Organization ID"
@Param			projectId			path		string	true	"Project ID"
@Param			stackId				path		string	true	"Stack ID"
@Param			projectNamespace	path		string	true	"Project Namespace"
@Success		200					{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces/{projectNamespace}/stacks/{stackId} [delete]
@Security		JWT

func (ProjectHandler) GetProject

func (p ProjectHandler) GetProject(w http.ResponseWriter, r *http.Request)

GetProject godoc

@Tags			Projects
@Summary		Get projects
@Description	Get projects
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Success		200				{object}	domain.GetProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId} [get]
@Security		JWT

func (ProjectHandler) GetProjectKubeconfig

func (p ProjectHandler) GetProjectKubeconfig(w http.ResponseWriter, r *http.Request)

GetProjectKubeconfig godoc

@Tags			Projects
@Summary		Get project kubeconfig
@Description	Get project kubeconfig
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Success		200				{object}	domain.GetProjectKubeconfigResponse
@Router			/organizations/{organizationId}/projects/{projectId}/kubeconfig [get]
@Security		JWT

func (ProjectHandler) GetProjectMember

func (p ProjectHandler) GetProjectMember(w http.ResponseWriter, r *http.Request)

GetProjectMember godoc

@Tags			Projects
@Summary		Get project member
@Description	Get project member
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			projectMemberId	path		string	true	"Project Member ID"
@Success		200				{object}	domain.GetProjectMemberResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members/{projectMemberId} [get]
@Security		JWT

func (ProjectHandler) GetProjectMemberCount

func (p ProjectHandler) GetProjectMemberCount(w http.ResponseWriter, r *http.Request)

GetProjectMemberCount godoc

@Tags			Projects
@Summary		Get project member count group by project role
@Description	Get project member count group by project role
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Success		200				{object}	domain.GetProjectMemberCountResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members/count [get]
@Security		JWT

func (ProjectHandler) GetProjectMembers

func (p ProjectHandler) GetProjectMembers(w http.ResponseWriter, r *http.Request)

GetProjectMembers godoc

@Tags			Projects
@Summary		Get project members
@Description	Get project members
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			query			query		string	false	"project member search by query (query=all), (query=leader), (query=member), (query=viewer)"
@Success		200				{object}	domain.GetProjectMembersResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members [get]
@Security		JWT

func (ProjectHandler) GetProjectNamespace

func (p ProjectHandler) GetProjectNamespace(w http.ResponseWriter, r *http.Request)

GetProjectNamespace godoc

@Tags			Projects
@Summary		Get project namespace
@Description	Get project namespace
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"Organization ID"
@Param			projectId			path		string	true	"Project ID"
@Param			projectNamespace	path		string	true	"Project Namespace"
@Param			stackId				path		string	true	"Project Stack ID"
@Success		200					{object}	domain.GetProjectNamespaceResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces/{projectNamespace}/stacks/{stackId} [get]
@Security		JWT

func (ProjectHandler) GetProjectNamespaceK8sResources

func (p ProjectHandler) GetProjectNamespaceK8sResources(w http.ResponseWriter, r *http.Request)

GetProjectNamespaceK8sResources godoc

@Tags			Projects
@Summary		Get k8s resources for project namespace
@Description	Get k8s resources for project namespace
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"Organization ID"
@Param			projectId			path		string	true	"Project ID"
@Param			stackId				path		string	true	"Stack ID"
@Param			projectNamespace	path		string	true	"Project Namespace"
@Success		200					{object}	domain.GetProjectNamespaceK8sResourcesResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces/{projectNamespace}/stacks/{stackId}/k8s-resources [get]
@Security		JWT

func (ProjectHandler) GetProjectNamespaceKubeconfig

func (p ProjectHandler) GetProjectNamespaceKubeconfig(w http.ResponseWriter, r *http.Request)

GetProjectNamespaceKubeconfig godoc

@Tags			Projects
@Summary		Get project namespace kubeconfig
@Description	Get project namespace kubeconfig
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"Organization ID"
@Param			projectId			path		string	true	"Project ID"
@Param			stackId				path		string	true	"Stack ID"
@Param			projectNamespace	path		string	true	"Project Namespace"
@Success		200					{object}	domain.GetProjectNamespaceKubeConfigResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces/{projectNamespace}/stacks/{stackId}/kubeconfig [get]
@Security		JWT

func (ProjectHandler) GetProjectNamespaceResourcesUsage

func (p ProjectHandler) GetProjectNamespaceResourcesUsage(w http.ResponseWriter, r *http.Request)

GetProjectNamespaceResourcesUsage godoc

@Tags			Projects
@Summary		Get resources usage for project namespace
@Description	Get resources usage for project namespace
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"Organization ID"
@Param			projectId			path		string	true	"Project ID"
@Param			stackId				path		string	true	"Stack ID"
@Param			projectNamespace	path		string	true	"Project Namespace"
@Success		200					{object}	domain.GetProjectNamespaceResourcesUsageResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces/{projectNamespace}/stacks/{stackId}/resources-usage [get]
@Security		JWT

func (ProjectHandler) GetProjectNamespaces

func (p ProjectHandler) GetProjectNamespaces(w http.ResponseWriter, r *http.Request)

GetProjectNamespaces godoc

@Tags			Projects
@Summary		Get project namespaces
@Description	Get project namespaces
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Success		200				{object}	domain.GetProjectNamespacesResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces [get]
@Security		JWT

func (ProjectHandler) GetProjectRole

func (p ProjectHandler) GetProjectRole(w http.ResponseWriter, r *http.Request)

GetProjectRole godoc

@Tags			Projects
@Summary		Get project role
@Description	Get project role by id
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectRoleId	path		string	true	"Project Role ID"
@Success		200				{object}	domain.GetProjectRoleResponse
@Router			/organizations/{organizationId}/projects/project-roles/{projectRoleId} [get]
@Security		JWT

func (ProjectHandler) GetProjectRoles

func (p ProjectHandler) GetProjectRoles(w http.ResponseWriter, r *http.Request)

GetProjectRoles godoc

@Tags			Projects
@Summary		Get project roles
@Description	Get project roles by giving params
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			query			query		string	false	"project role search by query (query=all), (query=leader), (query=member), (query=viewer)"
@Success		200				{object}	domain.GetProjectRolesResponse
@Router			/organizations/{organizationId}/projects/project-roles [get]
@Security		JWT

func (ProjectHandler) GetProjects

func (p ProjectHandler) GetProjects(w http.ResponseWriter, r *http.Request)

GetProjects godoc

@Tags			Projects
@Summary		Get projects
@Description	Get projects
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			query			query		string	false	"(all | only)"
@Param			projectName		query		string	false	"Project Name"
@Success		200				{object}	domain.GetProjectsResponse
@Router			/organizations/{organizationId}/projects [get]
@Security		JWT

func (ProjectHandler) IsProjectNameExist

func (p ProjectHandler) IsProjectNameExist(w http.ResponseWriter, r *http.Request)

IsProjectNameExist godoc

@Tags			Projects
@Summary		Check project name exist
@Description	Check project name exist
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			type			query		string	false	"type (name)"
@Param			value			query		string	true	"value (project name)"
@Success		200				{object}	domain.CheckExistedResponse
@Router			/organizations/{organizationId}/projects/existence [get]
@Security		JWT

func (ProjectHandler) IsProjectNamespaceExist

func (p ProjectHandler) IsProjectNamespaceExist(w http.ResponseWriter, r *http.Request)

IsProjectNamespaceExist godoc

@Tags			Projects
@Summary		Check project namespace exist
@Description	Check project namespace exist
@Accept			json
@Produce		json
@Param			organizationId		path		string	true	"Organization ID"
@Param			projectId			path		string	true	"Project ID"
@Param			stackId				path		string	true	"Project Stack ID"
@Param			projectNamespace	path		string	true	"Project Namespace"
@Success		200					{object}	domain.CheckExistedResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces/{projectNamespace}/stacks/{stackId}/existence [get]
@Security		JWT

func (ProjectHandler) RemoveProjectMember

func (p ProjectHandler) RemoveProjectMember(w http.ResponseWriter, r *http.Request)

RemoveProjectMember godoc

@Tags			Projects
@Summary		Remove project members to project
@Description	Remove project members to project
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			projectId		path		string	true	"Project ID"
@Param			projectMemberId	path		string	true	"Project Member ID"
@Success		200				{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members/{projectMemberId} [delete]
@Security		JWT

func (ProjectHandler) RemoveProjectMembers

func (p ProjectHandler) RemoveProjectMembers(w http.ResponseWriter, r *http.Request)

RemoveProjectMembers godoc

@Tags			Projects
@Summary		Remove project members to project
@Description	Remove project members to project
@Accept			json
@Produce		json
@Param			organizationId	path		string								true	"Organization ID"
@Param			projectId		path		string								true	"Project ID"
@Param			request			body		domain.RemoveProjectMemberRequest	true	"Request body to remove project member"
@Success		200				{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members [delete]
@Security		JWT

func (ProjectHandler) SetFavoriteProject

func (p ProjectHandler) SetFavoriteProject(w http.ResponseWriter, r *http.Request)

func (ProjectHandler) SetFavoriteProjectNamespace

func (p ProjectHandler) SetFavoriteProjectNamespace(w http.ResponseWriter, r *http.Request)

func (ProjectHandler) UnSetFavoriteProject

func (p ProjectHandler) UnSetFavoriteProject(w http.ResponseWriter, r *http.Request)

func (ProjectHandler) UnSetFavoriteProjectNamespace

func (p ProjectHandler) UnSetFavoriteProjectNamespace(w http.ResponseWriter, r *http.Request)

func (ProjectHandler) UpdateProject

func (p ProjectHandler) UpdateProject(w http.ResponseWriter, r *http.Request)

UpdateProject godoc

@Tags			Projects
@Summary		Update project
@Description	Update project
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"Organization ID"
@Param			projectId		path		string						true	"Project ID"
@Param			request			body		domain.UpdateProjectRequest	true	"Request body to update project"
@Success		200				{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId} [put]
@Security		JWT

func (ProjectHandler) UpdateProjectMemberRole

func (p ProjectHandler) UpdateProjectMemberRole(w http.ResponseWriter, r *http.Request)

UpdateProjectMemberRole godoc

@Tags			Projects
@Summary		Update project  member   Role
@Description	Update project  member   Role
@Accept			json
@Produce		json
@Param			organizationId	path		string									true	"Organization ID"
@Param			projectId		path		string									true	"Project ID"
@Param			projectMemberId	path		string									true	"Project Member ID"
@Param			request			body		domain.UpdateProjectMemberRoleRequest	true	"Request body to update project member role"
@Success		200				{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members/{projectMemberId}/role [put]
@Security		JWT

func (ProjectHandler) UpdateProjectMembersRole

func (p ProjectHandler) UpdateProjectMembersRole(w http.ResponseWriter, r *http.Request)

UpdateProjectMembersRole godoc

@Tags			Projects
@Summary		Update project  member   Role
@Description	Update project  member   Role
@Accept			json
@Produce		json
@Param			organizationId	path		string									true	"Organization ID"
@Param			projectId		path		string									true	"Project ID"
@Param			request			body		domain.UpdateProjectMembersRoleRequest	true	"Request body to update project member role"
@Success		200				{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/members [put]
@Security		JWT

func (ProjectHandler) UpdateProjectNamespace

func (p ProjectHandler) UpdateProjectNamespace(w http.ResponseWriter, r *http.Request)

UpdateProjectNamespace godoc

@Tags			Projects
@Summary		Update project namespace
@Description	Update project namespace
@Accept			json
@Produce		json
@Param			organizationId		path		string									true	"Organization ID"
@Param			projectId			path		string									true	"Project ID"
@Param			projectNamespace	path		string									true	"Project Namespace"
@Param			stackId				path		string									true	"Project Stack ID"
@Param			request				body		domain.UpdateProjectNamespaceRequest	true	"Request body to update project namespace"
@Success		200					{object}	domain.CommonProjectResponse
@Router			/organizations/{organizationId}/projects/{projectId}/namespaces/{projectNamespace}/stacks/{stackId} [put]
@Security		JWT

type RoleHandler

type RoleHandler struct {
	// contains filtered or unexported fields
}

func NewRoleHandler

func NewRoleHandler(usecase usecase.Usecase) *RoleHandler

func (RoleHandler) Admin_GetTksRole

func (h RoleHandler) Admin_GetTksRole(w http.ResponseWriter, r *http.Request)

Admin_GetTksRole godoc

@Tags			Roles
@Summary		Admin Get Tks Role
@Description	Admin Get Tks Role
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			roleId			path		string	true	"Role ID"
@Success		200				{object}	domain.GetTksRoleResponse
@Router			/admin/organizations/{organizationId}/roles/{roleId} [get]
@Security		JWT

func (RoleHandler) Admin_ListTksRoles

func (h RoleHandler) Admin_ListTksRoles(w http.ResponseWriter, r *http.Request)

Admin_ListTksRoles godoc

@Tags			Roles
@Summary		Admin List Tks Roles
@Description	Admin List Tks Roles
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Success		200				{object}	domain.ListTksRoleResponse
@Router			/admin/organizations/{organizationId}/roles [get]
@Security		JWT

func (RoleHandler) AppendUsersToRole

func (h RoleHandler) AppendUsersToRole(w http.ResponseWriter, r *http.Request)

AppendUsersToRole godoc

@Tags			Roles
@Summary		Append Users To Role
@Description	Append Users To Role
@Accept			json
@Produce		json
@Param			organizationId	path	string							true	"Organization ID"
@Param			roleId			path	string							true	"Role ID"
@Param			body			body	domain.AppendUsersToRoleRequest	true	"Append Users To Role Request"
@Success		200
@Router			/organizations/{organizationId}/roles/{roleId}/users [post]
@Security		JWT

func (RoleHandler) CreateTksRole

func (h RoleHandler) CreateTksRole(w http.ResponseWriter, r *http.Request)

CreateTksRole godoc

@Tags			Roles
@Summary		Create Tks Role
@Description	Create Tks Role
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"Organization ID"
@Param			body			body		domain.CreateTksRoleRequest	true	"Create Tks Role Request"
@Success		200				{object}	domain.CreateTksRoleResponse
@Router			/organizations/{organizationId}/roles [post]
@Security		JWT

func (RoleHandler) DeleteTksRole

func (h RoleHandler) DeleteTksRole(w http.ResponseWriter, r *http.Request)

DeleteTksRole godoc

@Tags			Roles
@Summary		Delete Tks Role
@Description	Delete Tks Role
@Produce		json
@Param			organizationId	path	string	true	"Organization ID"
@Param			roleId			path	string	true	"Role ID"
@Success		200
@Router			/organizations/{organizationId}/roles/{roleId} [delete]
@Security		JWT

func (RoleHandler) GetPermissionsByRoleId

func (h RoleHandler) GetPermissionsByRoleId(w http.ResponseWriter, r *http.Request)

GetPermissionsByRoleId godoc

@Tags			Roles
@Summary		Get Permissions By Role ID
@Description	Get Permissions By Role ID
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			roleId			path		string	true	"Role ID"
@Success		200				{object}	domain.GetPermissionsByRoleIdResponse
@Router			/organizations/{organizationId}/roles/{roleId}/permissions [get]
@Security		JWT

func (RoleHandler) GetTksRole

func (h RoleHandler) GetTksRole(w http.ResponseWriter, r *http.Request)

GetTksRole godoc

@Tags			Roles
@Summary		Get Tks Role
@Description	Get Tks Role
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			roleId			path		string	true	"Role ID"
@Success		200				{object}	domain.GetTksRoleResponse
@Router			/organizations/{organizationId}/roles/{roleId} [get]
@Security		JWT

func (RoleHandler) GetUsersInRoleId

func (h RoleHandler) GetUsersInRoleId(w http.ResponseWriter, r *http.Request)

GetUsersInRoleId godoc

@Tags			Roles
@Summary		Get Users By Role ID
@Description	Get Users By Role ID
@Produce		json
@Param			organizationId	path		string		true	"Organization ID"
@Param			roleId			path		string		true	"Role ID"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.GetUsersInRoleIdResponse
@Router			/organizations/{organizationId}/roles/{roleId}/users [get]
@Security		JWT

func (RoleHandler) IsRoleNameExisted

func (h RoleHandler) IsRoleNameExisted(w http.ResponseWriter, r *http.Request)

IsRoleNameExisted godoc

@Tags			Roles
@Summary		Check whether the role name exists
@Description	Check whether the role name exists
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			roleName		path		string	true	"Role Name"
@Success		200				{object}	domain.CheckRoleNameResponse
@Router			/organizations/{organizationId}/roles/{roleName}/existence [get]
@Security		JWT

func (RoleHandler) ListTksRoles

func (h RoleHandler) ListTksRoles(w http.ResponseWriter, r *http.Request)

ListTksRoles godoc

@Tags			Roles
@Summary		List Tks Roles
@Description	List Tks Roles
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Success		200				{object}	domain.ListTksRoleResponse
@Router			/organizations/{organizationId}/roles [get]
@Security		JWT

func (RoleHandler) RemoveUsersFromRole

func (h RoleHandler) RemoveUsersFromRole(w http.ResponseWriter, r *http.Request)

RemoveUsersFromRole godoc

@Tags			Roles
@Summary		Remove Users From Role
@Description	Remove Users From Role
@Accept			json
@Produce		json
@Param			organizationId	path	string								true	"Organization ID"
@Param			roleId			path	string								true	"Role ID"
@Param			body			body	domain.RemoveUsersFromRoleRequest	true	"Remove Users From Role Request"
@Success		200
@Router			/organizations/{organizationId}/roles/{roleId}/users [delete]
@Security		JWT

func (RoleHandler) UpdatePermissionsByRoleId

func (h RoleHandler) UpdatePermissionsByRoleId(w http.ResponseWriter, r *http.Request)

UpdatePermissionsByRoleId godoc

@Tags			Roles
@Summary		Update Permissions By Role ID
@Description	Update Permissions By Role ID
@Accept			json
@Produce		json
@Param			organizationId	path	string									true	"Organization ID"
@Param			roleId			path	string									true	"Role ID"
@Param			body			body	domain.UpdatePermissionsByRoleIdRequest	true	"Update Permissions By Role ID Request"
@Success		200
@Router			/organizations/{organizationId}/roles/{roleId}/permissions [put]
@Security		JWT

func (RoleHandler) UpdateTksRole

func (h RoleHandler) UpdateTksRole(w http.ResponseWriter, r *http.Request)

UpdateTksRole godoc

@Tags			Roles
@Summary		Update Tks Role
@Description	Update Tks Role
@Accept			json
@Produce		json
@Param			organizationId	path	string						true	"Organization ID"
@Param			roleId			path	string						true	"Role ID"
@Param			body			body	domain.UpdateTksRoleRequest	true	"Update Tks Role Request"
@Success		200
@Router			/organizations/{organizationId}/roles/{roleId} [put]
@Security		JWT

type StackHandler

type StackHandler struct {
	// contains filtered or unexported fields
}

func NewStackHandler

func NewStackHandler(h usecase.Usecase) *StackHandler

func (*StackHandler) CheckStackName

func (h *StackHandler) CheckStackName(w http.ResponseWriter, r *http.Request)

CheckStackName godoc

@Tags			Stacks
@Summary		Check name for stack
@Description	Check name for stack
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			stackId			path		string	true	"stackId"
@Param			name			path		string	true	"name"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/stacks/name/{name}/existence [GET]
@Security		JWT

func (*StackHandler) CreateStack

func (h *StackHandler) CreateStack(w http.ResponseWriter, r *http.Request)

CreateStack godoc

@Tags			Stacks
@Summary		Create Stack
@Description	Create Stack
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"organizationId"
@Param			body			body		domain.CreateStackRequest	true	"create cloud setting request"
@Success		200				{object}	domain.CreateStackResponse
@Router			/organizations/{organizationId}/stacks [post]
@Security		JWT

func (*StackHandler) DeleteFavorite

func (h *StackHandler) DeleteFavorite(w http.ResponseWriter, r *http.Request)

DeleteFavorite godoc

@Tags			Stacks
@Summary		Delete favorite stack
@Description	Delete favorite stack
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			stackId			path		string	true	"stackId"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/stacks/{stackId}/favorite [delete]
@Security		JWT

func (*StackHandler) DeleteStack

func (h *StackHandler) DeleteStack(w http.ResponseWriter, r *http.Request)

DeleteStack godoc

@Tags			Stacks
@Summary		Delete Stack
@Description	Delete Stack
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			stackId			path		string	true	"stackId"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/stacks/{stackId} [delete]
@Security		JWT

func (*StackHandler) GetStack

func (h *StackHandler) GetStack(w http.ResponseWriter, r *http.Request)

GetStack godoc

@Tags			Stacks
@Summary		Get Stack
@Description	Get Stack
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			stackId			path		string	true	"stackId"
@Success		200				{object}	domain.GetStackResponse
@Router			/organizations/{organizationId}/stacks/{stackId} [get]
@Security		JWT

func (*StackHandler) GetStackKubeConfig

func (h *StackHandler) GetStackKubeConfig(w http.ResponseWriter, r *http.Request)

GetStackKubeConfig godoc

@Tags			Stacks
@Summary		Get KubeConfig by stack
@Description	Get KubeConfig by stack
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			stackId			path		string	true	"organizationId"
@Success		200				{object}	domain.GetStackKubeConfigResponse
@Router			/organizations/{organizationId}/stacks/{stackId}/kube-config [get]
@Security		JWT

func (*StackHandler) GetStackStatus

func (h *StackHandler) GetStackStatus(w http.ResponseWriter, r *http.Request)

GetStackStatus godoc

@Tags			Stacks
@Summary		Get Stack Status
@Description	Get Stack Status
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			stackId			path		string	true	"stackId"
@Success		200				{object}	domain.GetStackStatusResponse
@Router			/organizations/{organizationId}/stacks/{stackId}/status [get]
@Security		JWT

func (*StackHandler) GetStacks

func (h *StackHandler) GetStacks(w http.ResponseWriter, r *http.Request)

GetStacks godoc

@Tags			Stacks
@Summary		Get Stacks
@Description	Get Stacks
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			limit			query		string	false	"pageSize"
@Param			page			query		string	false	"pageNumber"
@Param			soertColumn		query		string	false	"sortColumn"
@Param			sortOrder		query		string	false	"sortOrder"
@Success		200				{object}	domain.GetStacksResponse
@Router			/organizations/{organizationId}/stacks [get]
@Security		JWT

func (*StackHandler) InstallStack

func (h *StackHandler) InstallStack(w http.ResponseWriter, r *http.Request)

func (*StackHandler) SetFavorite

func (h *StackHandler) SetFavorite(w http.ResponseWriter, r *http.Request)

SetFavorite godoc

@Tags			Stacks
@Summary		Set favorite stack
@Description	Set favorite stack
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			stackId			path		string	true	"stackId"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/stacks/{stackId}/favorite [post]
@Security		JWT

func (*StackHandler) UpdateStack

func (h *StackHandler) UpdateStack(w http.ResponseWriter, r *http.Request)

UpdateStack godoc

@Tags			Stacks
@Summary		Update Stack
@Description	Update Stack
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"organizationId"
@Param			stackId			path		string						true	"stackId"
@Param			body			body		domain.UpdateStackRequest	true	"Update cloud setting request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/stacks/{stackId} [put]
@Security		JWT

type StackTemplateHandler

type StackTemplateHandler struct {
	// contains filtered or unexported fields
}

func NewStackTemplateHandler

func NewStackTemplateHandler(h usecase.Usecase) *StackTemplateHandler

func (*StackTemplateHandler) AddOrganizationStackTemplates

func (h *StackTemplateHandler) AddOrganizationStackTemplates(w http.ResponseWriter, r *http.Request)

AddOrganizationStackTemplates godoc

@Tags			StackTemplates
@Summary		Add organization stackTemplates
@Description	Add organization stackTemplates
@Accept			json
@Produce		json
@Param			body	body		domain.AddOrganizationStackTemplatesRequest	true	"Add organization stack templates request"
@Success		200		{object}	nil
@Router			/organizations/{organizationId}/stack-templates [post]
@Security		JWT

func (*StackTemplateHandler) CheckStackTemplateName

func (h *StackTemplateHandler) CheckStackTemplateName(w http.ResponseWriter, r *http.Request)

CheckStackTemplateName godoc

@Tags			StackTemplates
@Summary		Check name for stackTemplate
@Description	Check name for stackTemplate
@Accept			json
@Produce		json
@Param			name	path		string	true	"name"
@Success		200		{object}	domain.CheckStackTemplateNameResponse
@Router			/admin/stack-templates/name/{name}/existence [GET]
@Security		JWT

func (*StackTemplateHandler) CreateStackTemplate

func (h *StackTemplateHandler) CreateStackTemplate(w http.ResponseWriter, r *http.Request)

CreateStackTemplate godoc

@Tags			StackTemplates
@Summary		Create StackTemplate
@Description	Create StackTemplate
@Accept			json
@Produce		json
@Param			body	body		domain.CreateStackTemplateRequest	true	"create stack template request"
@Success		200		{object}	domain.CreateStackTemplateResponse
@Router			/admin/stack-templates [post]
@Security		JWT

func (*StackTemplateHandler) DeleteStackTemplate

func (h *StackTemplateHandler) DeleteStackTemplate(w http.ResponseWriter, r *http.Request)

DeleteStackTemplate godoc

@Tags			StackTemplates
@Summary		Delete StackTemplate
@Description	Delete StackTemplate
@Accept			json
@Produce		json
@Param			stackTemplateId	path		string	true	"stackTemplateId"
@Success		200				{object}	nil
@Router			/admin/stack-templates/{stackTemplateId} [delete]
@Security		JWT

func (*StackTemplateHandler) GetOrganizationStackTemplate

func (h *StackTemplateHandler) GetOrganizationStackTemplate(w http.ResponseWriter, r *http.Request)

GetOrganizationStackTemplate godoc

@Tags			StackTemplates
@Summary		Get Organization StackTemplate
@Description	Get Organization StackTemplate
@Accept			json
@Produce		json
@Success		200	{object}	domain.GetStackTemplateResponse
@Router			/organizations/{organizationId}/stack-templates/{stackTemplateId} [get]
@Security		JWT

func (*StackTemplateHandler) GetOrganizationStackTemplates

func (h *StackTemplateHandler) GetOrganizationStackTemplates(w http.ResponseWriter, r *http.Request)

GetOrganizationStackTemplates godoc

@Tags			StackTemplates
@Summary		Get Organization StackTemplates
@Description	Get Organization StackTemplates
@Accept			json
@Produce		json
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			soertColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filters		query		[]string	false	"filters"
@Success		200			{object}	domain.GetStackTemplatesResponse
@Router			/organizations/{organizationId}/stack-templates [get]
@Security		JWT

func (*StackTemplateHandler) GetStackTemplate

func (h *StackTemplateHandler) GetStackTemplate(w http.ResponseWriter, r *http.Request)

GetStackTemplate godoc

@Tags			StackTemplates
@Summary		Get StackTemplate
@Description	Get StackTemplate
@Accept			json
@Produce		json
@Param			stackTemplateId	path		string	true	"stackTemplateId"
@Success		200				{object}	domain.GetStackTemplateResponse
@Router			/admin/stack-templates/{stackTemplateId} [get]
@Security		JWT

func (*StackTemplateHandler) GetStackTemplateServices

func (h *StackTemplateHandler) GetStackTemplateServices(w http.ResponseWriter, r *http.Request)

GetStackTemplateServices godoc

@Tags			StackTemplates
@Summary		Get GetStackTemplateServices
@Description	Get GetStackTemplateServices
@Accept			json
@Produce		json
@Success		200	{object}	domain.GetStackTemplateServicesResponse
@Router			/admin/stack-templates/services [get]
@Security		JWT

func (*StackTemplateHandler) GetStackTemplateTemplateIds

func (h *StackTemplateHandler) GetStackTemplateTemplateIds(w http.ResponseWriter, r *http.Request)

GetStackTemplateTemplateIds godoc

@Tags			StackTemplates
@Summary		Get GetStackTemplateTemplateIds
@Description	Get GetStackTemplateTemplateIds
@Accept			json
@Produce		json
@Success		200	{object}	domain.GetStackTemplateTemplateIdsResponse
@Router			/admin/stack-templates/template-ids [get]
@Security		JWT

func (*StackTemplateHandler) GetStackTemplates

func (h *StackTemplateHandler) GetStackTemplates(w http.ResponseWriter, r *http.Request)

GetStackTemplate godoc

@Tags			StackTemplates
@Summary		Get StackTemplates
@Description	Get StackTemplates
@Accept			json
@Produce		json
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			soertColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filters		query		[]string	false	"filters"
@Success		200			{object}	domain.GetStackTemplatesResponse
@Router			/admin/stack-templates [get]
@Security		JWT

func (*StackTemplateHandler) RemoveOrganizationStackTemplates

func (h *StackTemplateHandler) RemoveOrganizationStackTemplates(w http.ResponseWriter, r *http.Request)

RemoveOrganizationStackTemplates godoc

@Tags			StackTemplates
@Summary		Remove organization stackTemplates
@Description	Remove organization stackTemplates
@Accept			json
@Produce		json
@Param			body	body		domain.RemoveOrganizationStackTemplatesRequest	true	"Remove organization stack templates request"
@Success		200		{object}	nil
@Router			/organizations/{organizationId}/stack-templates [put]
@Security		JWT

func (*StackTemplateHandler) UpdateStackTemplate

func (h *StackTemplateHandler) UpdateStackTemplate(w http.ResponseWriter, r *http.Request)

UpdateStackTemplate godoc

@Tags			StackTemplates
@Summary		Update StackTemplate
@Description	Update StackTemplate
@Accept			json
@Produce		json
@Param			body	body		domain.UpdateStackTemplateRequest	true	"Update stack template request"
@Success		200		{object}	nil
@Router			/admin/stack-templates/{stackTemplateId} [put]
@Security		JWT

func (*StackTemplateHandler) UpdateStackTemplateOrganizations

func (h *StackTemplateHandler) UpdateStackTemplateOrganizations(w http.ResponseWriter, r *http.Request)

UpdateStackTemplateOrganizations godoc

@Tags			StackTemplates
@Summary		Update StackTemplate organizations
@Description	Update StackTemplate organizations
@Accept			json
@Produce		json
@Param			body	body		domain.UpdateStackTemplateOrganizationsRequest	true	"Update stack template organizations request"
@Success		200		{object}	nil
@Router			/admin/stack-templates/{stackTemplateId}/organizations [put]
@Security		JWT

type SystemNotificationHandler

type SystemNotificationHandler struct {
	// contains filtered or unexported fields
}

func NewSystemNotificationHandler

func NewSystemNotificationHandler(h usecase.Usecase) *SystemNotificationHandler

func (*SystemNotificationHandler) CreateSystemNotification

func (h *SystemNotificationHandler) CreateSystemNotification(w http.ResponseWriter, r *http.Request)

CreateSystemNotification godoc

@Tags			SystemNotifications
@Summary		Create systemNotification. ADMIN ONLY
@Description	Create systemNotification. ADMIN ONLY
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	nil
@Router			/system-api/organizations/{organizationId}/system-notifications [post]
@Security		JWT

func (*SystemNotificationHandler) CreateSystemNotificationAction

func (h *SystemNotificationHandler) CreateSystemNotificationAction(w http.ResponseWriter, r *http.Request)

CreateSystemNotificationAction godoc

@Tags			SystemNotifications
@Summary		Create systemNotification action
@Description	Create systemNotification action
@Accept			json
@Produce		json
@Param			organizationId			path		string	true	"organizationId"
@Param			systemNotificationId	path		string	true	"systemNotificationId"
@Success		200						{object}	nil
@Router			/organizations/{organizationId}/system-notifications/{systemNotificationId}/actions [post]
@Security		JWT

func (*SystemNotificationHandler) DeleteSystemNotification

func (h *SystemNotificationHandler) DeleteSystemNotification(w http.ResponseWriter, r *http.Request)

DeleteSystemNotification godoc

@Tags			SystemNotifications
@Summary		Delete SystemNotification
@Description	Delete SystemNotification
@Accept			json
@Produce		json
@Param			organizationId			path		string	true	"organizationId"
@Param			systemNotificationId	path		string	true	"systemNotificationId"
@Success		200						{object}	nil
@Router			/organizations/{organizationId}/system-notifications/{systemNotificationId} [delete]
@Security		JWT

func (*SystemNotificationHandler) GetSystemNotification

func (h *SystemNotificationHandler) GetSystemNotification(w http.ResponseWriter, r *http.Request)

GetSystemNotification godoc

@Tags			SystemNotifications
@Summary		Get SystemNotification
@Description	Get SystemNotification
@Accept			json
@Produce		json
@Param			organizationId			path		string	true	"organizationId"
@Param			systemNotificationId	path		string	true	"systemNotificationId"
@Success		200						{object}	domain.GetSystemNotificationResponse
@Router			/organizations/{organizationId}/system-notifications/{systemNotificationId} [get]
@Security		JWT

func (*SystemNotificationHandler) GetSystemNotifications

func (h *SystemNotificationHandler) GetSystemNotifications(w http.ResponseWriter, r *http.Request)

GetSystemNotification godoc

@Tags			SystemNotifications
@Summary		Get SystemNotifications
@Description	Get SystemNotifications
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"organizationId"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.GetSystemNotificationsResponse
@Router			/organizations/{organizationId}/system-notifications [get]
@Security		JWT

func (*SystemNotificationHandler) SystemNotificationTest

func (h *SystemNotificationHandler) SystemNotificationTest(w http.ResponseWriter, r *http.Request)

func (*SystemNotificationHandler) UpdateSystemNotification

func (h *SystemNotificationHandler) UpdateSystemNotification(w http.ResponseWriter, r *http.Request)

UpdateSystemNotification godoc

@Tags			SystemNotifications
@Summary		Update SystemNotification
@Description	Update SystemNotification
@Accept			json
@Produce		json
@Param			organizationId			path		string									true	"organizationId"
@Param			systemNotificationId	path		string									true	"systemNotificationId"
@Param			body					body		domain.UpdateSystemNotificationRequest	true	"Update cloud setting request"
@Success		200						{object}	nil
@Router			/organizations/{organizationId}/system-notifications/{systemNotificationId} [put]
@Security		JWT

type SystemNotificationRuleHandler

type SystemNotificationRuleHandler struct {
	// contains filtered or unexported fields
}

func NewSystemNotificationRuleHandler

func NewSystemNotificationRuleHandler(h usecase.Usecase) *SystemNotificationRuleHandler

func (*SystemNotificationRuleHandler) CheckSystemNotificationRuleName

func (h *SystemNotificationRuleHandler) CheckSystemNotificationRuleName(w http.ResponseWriter, r *http.Request)

CheckSystemNotificationRuleName godoc

@Tags			SystemNotificationRules
@Summary		Check name for systemNotificationRule
@Description	Check name for systemNotificationRule
@Accept			json
@Produce		json
@Param			name			path		string	true	"name"
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	domain.CheckSystemNotificationRuleNameResponse
@Router			/organizations/{organizationId}/system-notification-rules/name/{name}/existence [GET]
@Security		JWT

func (*SystemNotificationRuleHandler) CreateSystemNotificationRule

func (h *SystemNotificationRuleHandler) CreateSystemNotificationRule(w http.ResponseWriter, r *http.Request)

CreateSystemNotificationRule godoc

@Tags			SystemNotificationRules
@Summary		Create SystemNotificationRule
@Description	Create SystemNotificationRule
@Accept			json
@Produce		json
@Param			organizationId	path		string										true	"organizationId"
@Param			body			body		domain.CreateSystemNotificationRuleRequest	true	"create stack template request"
@Success		200				{object}	domain.CreateSystemNotificationRuleResponse
@Router			/organizations/{organizationId}/system-notification-rules [post]
@Security		JWT

func (*SystemNotificationRuleHandler) DeleteSystemNotificationRule

func (h *SystemNotificationRuleHandler) DeleteSystemNotificationRule(w http.ResponseWriter, r *http.Request)

DeleteSystemNotificationRule godoc

@Tags			SystemNotificationRules
@Summary		Delete SystemNotificationRule
@Description	Delete SystemNotificationRule
@Accept			json
@Produce		json
@Param			organizationId				path		string	true	"organizationId"
@Param			systemNotificationRuleId	path		string	true	"systemNotificationRuleId"
@Success		200							{object}	domain.DeleteSystemNotificationRuleResponse
@Router			/organizations/{organizationId}/system-notification-rules/{systemNotificationRuleId} [delete]
@Security		JWT

func (*SystemNotificationRuleHandler) GetSystemNotificationRule

func (h *SystemNotificationRuleHandler) GetSystemNotificationRule(w http.ResponseWriter, r *http.Request)

GetSystemNotificationRule godoc

@Tags			SystemNotificationRules
@Summary		Get SystemNotificationRule
@Description	Get SystemNotificationRule
@Accept			json
@Produce		json
@Param			organizationId				path		string	true	"organizationId"
@Param			systemNotificationRuleId	path		string	true	"systemNotificationRuleId"
@Success		200							{object}	domain.GetSystemNotificationRuleResponse
@Router			/organizations/{organizationId}/system-notification-rules/{systemNotificationRuleId} [get]
@Security		JWT

func (*SystemNotificationRuleHandler) GetSystemNotificationRules

func (h *SystemNotificationRuleHandler) GetSystemNotificationRules(w http.ResponseWriter, r *http.Request)

GetSystemNotificationRule godoc

@Tags			SystemNotificationRules
@Summary		Get SystemNotificationRules
@Description	Get SystemNotificationRules
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"organizationId"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	domain.GetSystemNotificationRulesResponse
@Router			/organizations/{organizationId}/system-notification-rules [get]
@Security		JWT

func (*SystemNotificationRuleHandler) MakeDefaultSystemNotificationRules

func (h *SystemNotificationRuleHandler) MakeDefaultSystemNotificationRules(w http.ResponseWriter, r *http.Request)

MakeDefaultSystemNotificationRules godoc

@Tags			SystemNotificationRules
@Summary		MakeDefaultSystemNotificationRules
@Description	MakeDefaultSystemNotificationRules
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/system-notification-rules/default-system-rules [POST]
@Security		JWT

func (*SystemNotificationRuleHandler) UpdateSystemNotificationRule

func (h *SystemNotificationRuleHandler) UpdateSystemNotificationRule(w http.ResponseWriter, r *http.Request)

UpdateSystemNotificationRule godoc

@Tags			SystemNotificationRules
@Summary		Update SystemNotificationRule
@Description	Update SystemNotificationRule
@Accept			json
@Produce		json
@Param			organizationId				path		string										true	"organizationId"
@Param			systemNotificationRuleId	path		string										true	"systemNotificationRuleId"
@Param			body						body		domain.UpdateSystemNotificationRuleRequest	true	"Update systemNotificationRule request"
@Success		200							{object}	nil
@Router			/organizations/{organizationId}/system-notification-rules/{systemNotificationRuleId} [put]
@Security		JWT

type SystemNotificationTemplateHandler

type SystemNotificationTemplateHandler struct {
	// contains filtered or unexported fields
}

func NewSystemNotificationTemplateHandler

func NewSystemNotificationTemplateHandler(h usecase.Usecase) *SystemNotificationTemplateHandler

func (*SystemNotificationTemplateHandler) AddOrganizationSystemNotificationTemplates

func (h *SystemNotificationTemplateHandler) AddOrganizationSystemNotificationTemplates(w http.ResponseWriter, r *http.Request)

AddOrganizationSystemNotificationTemplates godoc

@Tags			SystemNotificationTemplates
@Summary		Add organization systemNotificationTemplates
@Description	Add organization systemNotificationTemplates
@Accept			json
@Produce		json
@Param			organizationId	path		string														true	"organizationId"
@Param			body			body		domain.AddOrganizationSystemNotificationTemplatesRequest	true	"Add organization systemNotification templates request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/system-notification-templates [post]
@Security		JWT

func (*SystemNotificationTemplateHandler) CheckSystemNotificationTemplateName

func (h *SystemNotificationTemplateHandler) CheckSystemNotificationTemplateName(w http.ResponseWriter, r *http.Request)

CheckSystemNotificationTemplateName godoc

@Tags			SystemNotificationTemplates
@Summary		Check name for systemNotificationTemplate
@Description	Check name for systemNotificationTemplate
@Accept			json
@Produce		json
@Param			name	path		string	true	"name"
@Success		200		{object}	domain.CheckSystemNotificaionTemplateNameResponse
@Router			/admin/system-notification-templates/name/{name}/existence [GET]
@Security		JWT

func (*SystemNotificationTemplateHandler) CreateSystemNotificationTemplate

func (h *SystemNotificationTemplateHandler) CreateSystemNotificationTemplate(w http.ResponseWriter, r *http.Request)

CreateSystemNotificationTemplate godoc

@Tags			SystemNotificationTemplates
@Summary		Create alert template. ADMIN ONLY
@Description	Create alert template. ADMIN ONLY
@Accept			json
@Produce		json
@Success		200	{object}	domain.CreateSystemNotificationTemplateRequest
@Router			/admin/system-notification-templates [post]
@Security		JWT

func (*SystemNotificationTemplateHandler) DeleteSystemNotificationTemplate

func (h *SystemNotificationTemplateHandler) DeleteSystemNotificationTemplate(w http.ResponseWriter, r *http.Request)

DeleteSystemNotificationTemplate godoc

@Tags			SystemNotificationTemplates
@Summary		Delete SystemNotificationTemplate
@Description	Delete SystemNotificationTemplate
@Accept			json
@Produce		json
@Param			systemNotificationTemplateId	path		string	true	"systemNotificationTemplateId"
@Success		200								{object}	nil
@Router			/admin/system-notification-templates/{systemNotificationTemplateId} [delete]
@Security		JWT

func (*SystemNotificationTemplateHandler) GetOrganizationSystemNotificationTemplate

func (h *SystemNotificationTemplateHandler) GetOrganizationSystemNotificationTemplate(w http.ResponseWriter, r *http.Request)

GetOrganizationSystemNotificationTemplate godoc

@Tags			SystemNotificationTemplates
@Summary		Get Organization SystemNotificationTemplate
@Description	Get Organization SystemNotificationTemplate
@Accept			json
@Produce		json
@Param			systemNotificationTemplateId	path		string	true	"systemNotificationTemplateId"
@Success		200								{object}	domain.GetSystemNotificationTemplateResponse
@Router			/organizations/{organizationId}/system-notification-templates/{systemNotificationTemplateId} [get]
@Security		JWT

func (*SystemNotificationTemplateHandler) GetOrganizationSystemNotificationTemplates

func (h *SystemNotificationTemplateHandler) GetOrganizationSystemNotificationTemplates(w http.ResponseWriter, r *http.Request)

GetOrganizationSystemNotificationTemplates godoc

@Tags			SystemNotificationTemplates
@Summary		Get Organization SystemNotificationTemplates
@Description	Get Organization SystemNotificationTemplates
@Accept			json
@Produce		json
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			soertColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filters		query		[]string	false	"filters"
@Success		200			{object}	domain.GetSystemNotificationTemplatesResponse
@Router			/organizations/{organizationId}/system-notification-templates [get]
@Security		JWT

func (*SystemNotificationTemplateHandler) GetSystemNotificationTemplate

func (h *SystemNotificationTemplateHandler) GetSystemNotificationTemplate(w http.ResponseWriter, r *http.Request)

GetSystemNotificationTemplate godoc

@Tags			SystemNotificationTemplates
@Summary		Get SystemNotificationTemplate
@Description	Get SystemNotificationTemplate
@Accept			json
@Produce		json
@Param			systemNotificationTemplateId	path		string	true	"systemNotificationTemplateId"
@Success		200								{object}	domain.GetSystemNotificationTemplateResponse
@Router			/admin/system-notification-templates/{systemNotificationTemplateId} [get]
@Security		JWT

func (*SystemNotificationTemplateHandler) GetSystemNotificationTemplates

func (h *SystemNotificationTemplateHandler) GetSystemNotificationTemplates(w http.ResponseWriter, r *http.Request)

GetSystemNotificationTemplate godoc

@Tags			SystemNotificationTemplates
@Summary		Get SystemNotificationTemplates
@Description	Get SystemNotificationTemplates
@Accept			json
@Produce		json
@Param			pageSize	query		string		false	"pageSize"
@Param			pageNumber	query		string		false	"pageNumber"
@Param			soertColumn	query		string		false	"sortColumn"
@Param			sortOrder	query		string		false	"sortOrder"
@Param			filters		query		[]string	false	"filters"
@Success		200			{object}	domain.GetSystemNotificationTemplatesResponse
@Router			/admin/system-notification-templates [get]
@Security		JWT

func (*SystemNotificationTemplateHandler) RemoveOrganizationSystemNotificationTemplates

func (h *SystemNotificationTemplateHandler) RemoveOrganizationSystemNotificationTemplates(w http.ResponseWriter, r *http.Request)

RemoveOrganizationSystemNotificationTemplates godoc

@Tags			SystemNotificationTemplates
@Summary		Remove organization systemNotificationTemplates
@Description	Remove organization systemNotificationTemplates
@Accept			json
@Produce		json
@Param			organizationId	path		string														true	"organizationId"
@Param			body			body		domain.RemoveOrganizationSystemNotificationTemplatesRequest	true	"Remove organization systemNotification templates request"
@Success		200				{object}	nil
@Router			/organizations/{organizationId}/system-notification-templates [put]
@Security		JWT

func (*SystemNotificationTemplateHandler) UpdateSystemNotificationTemplate

func (h *SystemNotificationTemplateHandler) UpdateSystemNotificationTemplate(w http.ResponseWriter, r *http.Request)

UpdateSystemNotificationTemplate godoc

@Tags			SystemNotificationTemplates
@Summary		Update SystemNotificationTemplate
@Description	Update SystemNotificationTemplate
@Accept			json
@Produce		json
@Param			systemNotificationTemplateId	path		string											true	"systemNotificationTemplateId"
@Param			body							body		domain.UpdateSystemNotificationTemplateRequest	true	"Update alert template request"
@Success		200								{object}	nil
@Router			/admin/system-notification-templates/{systemNotificationTemplateId} [put]
@Security		JWT

type UserHandler

type UserHandler struct {
	// contains filtered or unexported fields
}

func (UserHandler) Admin_Create

func (u UserHandler) Admin_Create(w http.ResponseWriter, r *http.Request)

Admin_Create godoc

@Tags			Users
@Summary		Create user by admin in Admin Portal
@Description	Create user by admin in Admin Portal
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"organizationId"
@Param			body			body		domain.Admin_CreateUserRequest	true	"create user request"
@Success		200				{object}	domain.Admin_CreateUserResponse	"create user response"
@Router			/admin/organizations/{organizationId}/users [post]
@Security		JWT

func (UserHandler) Admin_Delete

func (u UserHandler) Admin_Delete(w http.ResponseWriter, r *http.Request)

Admin_Delete godoc

@Tags			Users
@Summary		Delete user by admin in Admin Portal
@Description	Delete user by admin in Admin Portal
@Accept			json
@Produce		json
@Param			body			body	domain.DeleteUserRequest	true	"input"
@Param			organizationId	path	string						true	"organizationId"
@Param			accountId		path	string						true	"accountId"
@Success		200
@Router			/admin/organizations/{organizationId}/users/{accountId} [delete]
@Security		JWT

func (UserHandler) Admin_Update

func (u UserHandler) Admin_Update(w http.ResponseWriter, r *http.Request)

Admin_Update godoc

@Tags			Users
@Summary		Update user by admin in Admin Portal
@Description	Update user by admin in Admin Portal
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"organizationId"
@Param			accountId		path		string							true	"accountId"
@Param			body			body		domain.Admin_UpdateUserRequest	true	"input"
@Success		200				{object}	domain.Admin_UpdateUserResponse
@Router			/admin/organizations/{organizationId}/users/{accountId} [put]
@Security		JWT

func (UserHandler) CheckEmail

func (u UserHandler) CheckEmail(w http.ResponseWriter, r *http.Request)

CheckEmail godoc

@Tags			Users
@Summary		Get user email existence
@Description	return true when email exists
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			accountId		path		string	true	"email"
@Success		200				{object}	domain.CheckExistedResponse
@Router			/organizations/{organizationId}/users/email/{email}/existence [get]
@Security		JWT

func (UserHandler) CheckId

func (u UserHandler) CheckId(w http.ResponseWriter, r *http.Request)

CheckId godoc

@Tags			Users
@Summary		Get user id existence
@Description	return true when accountId exists
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			accountId		path		string	true	"accountId"
@Success		200				{object}	domain.CheckExistedResponse
@Router			/organizations/{organizationId}/users/account-id/{accountId}/existence [get]
@Security		JWT

func (UserHandler) Create

func (u UserHandler) Create(w http.ResponseWriter, r *http.Request)

Create godoc

@Tags			Users
@Summary		Create user
@Description	Create user
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"organizationId"
@Param			body			body		domain.CreateUserRequest	true	"create user request"
@Success		200				{object}	domain.CreateUserResponse	"create user response"
@Router			/organizations/{organizationId}/users [post]
@Security		JWT

func (UserHandler) Delete

func (u UserHandler) Delete(w http.ResponseWriter, r *http.Request)

Delete godoc

@Tags			Users
@Summary		Delete user
@Description	Delete user
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			accountId		path		string	true	"accountId"
@Success		200				{object}	domain.DeleteUserResponse
@Router			/organizations/{organizationId}/users/{accountId} [delete]
@Security		JWT

func (UserHandler) DeleteMyProfile

func (u UserHandler) DeleteMyProfile(w http.ResponseWriter, r *http.Request)

DeleteMyProfile godoc

@Tags			My-profile
@Summary		Delete myProfile
@Description	Delete myProfile
@Accept			json
@Produce		json
@Param			organizationId	path	string	true	"organizationId"
@Success		200
@Failure		400
@Router			/organizations/{organizationId}/my-profile [delete]
@Security		JWT

func (UserHandler) Get

Get godoc

@Tags			Users
@Summary		Get user detail
@Description	Get user detail
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Param			accountId		path		string	true	"accountId"
@Success		200				{object}	domain.GetUserResponse
@Router			/organizations/{organizationId}/users/{accountId} [get]
@Security		JWT

func (UserHandler) GetMyProfile

func (u UserHandler) GetMyProfile(w http.ResponseWriter, r *http.Request)

GetMyProfile godoc

@Tags			My-profile
@Summary		Get my profile detail
@Description	Get my profile detail
@Accept			json
@Produce		json
@Param			organizationId	path		string	true	"organizationId"
@Success		200				{object}	domain.GetMyProfileResponse
@Router			/organizations/{organizationId}/my-profile [get]
@Security		JWT

func (UserHandler) GetPermissionsByAccountId

func (u UserHandler) GetPermissionsByAccountId(w http.ResponseWriter, r *http.Request)

GetPermissionsByAccountId godoc

@Tags			Users
@Summary		Get Permissions By Account ID
@Description	Get Permissions By Account ID
@Produce		json
@Param			organizationId	path		string	true	"Organization ID"
@Param			accountId		path		string	true	"Account ID"
@Success		200				{object}	domain.GetUsersPermissionsResponse
@Router			/organizations/{organizationId}/users/{accountId}/permissions [get]
@Security		JWT

func (UserHandler) List

func (u UserHandler) List(w http.ResponseWriter, r *http.Request)

List godoc

@Tags			Users
@Summary		Get user list
@Description	Get user list
@Accept			json
@Produce		json
@Param			organizationId	path		string		true	"organizationId"
@Param			pageSize		query		string		false	"pageSize"
@Param			pageNumber		query		string		false	"pageNumber"
@Param			soertColumn		query		string		false	"sortColumn"
@Param			sortOrder		query		string		false	"sortOrder"
@Param			filters			query		[]string	false	"filters"
@Success		200				{object}	[]domain.ListUserBody
@Router			/organizations/{organizationId}/users [get]
@Security		JWT

func (UserHandler) RenewPasswordExpiredDate

func (u UserHandler) RenewPasswordExpiredDate(w http.ResponseWriter, r *http.Request)

RenewPasswordExpiredDate godoc

@Tags			My-profile
@Summary		Update user's password expired date to current date
@Description	Update user's password expired date to current date
@Accept			json
@Produce		json
@Param			organizationId	path	string	true	"organizationId"
@Success		200
@Failure		400	{object}	httpErrors.RestError
@Router			/organizations/{organizationId}/my-profile/next-password-change [put]
@Security		JWT

func (UserHandler) ResetPassword

func (u UserHandler) ResetPassword(w http.ResponseWriter, r *http.Request)

ResetPassword godoc

@Tags			Users
@Summary		Reset user's password as temporary password by admin
@Description	Reset user's password as temporary password by admin and send email to user
@Accept			json
@Produce		json
@Param			organizationId	path	string	true	"organizationId"
@Param			accountId		path	string	true	"accountId"
@Success		200
@Router			/organizations/{organizationId}/users/{accountId}/reset-password [put]
@Security		JWT

func (UserHandler) Update

func (u UserHandler) Update(w http.ResponseWriter, r *http.Request)

Update godoc

@Tags			Users
@Summary		Update user
@Description	Update user
@Accept			json
@Produce		json
@Param			organizationId	path		string						true	"organizationId"
@Param			accountId		path		string						true	"accountId"
@Param			body			body		domain.UpdateUserRequest	true	"input"
@Success		200				{object}	domain.UpdateUserResponse
@Router			/organizations/{organizationId}/users/{accountId} [put]
@Security		JWT

func (UserHandler) UpdateMyPassword

func (u UserHandler) UpdateMyPassword(w http.ResponseWriter, r *http.Request)

UpdateMyPassword godoc

@Tags			My-profile
@Summary		Update user password detail
@Description	Update user password detail
@Accept			json
@Produce		json
@Param			organizationId	path	string							true	"organizationId"
@Param			body			body	domain.UpdatePasswordRequest	true	"update user password request"
@Success		200
@Router			/organizations/{organizationId}/my-profile/password [put]
@Security		JWT

func (UserHandler) UpdateMyProfile

func (u UserHandler) UpdateMyProfile(w http.ResponseWriter, r *http.Request)

UpdateMyProfile godoc

@Tags			My-profile
@Summary		Update my profile detail
@Description	Update my profile detail
@Accept			json
@Produce		json
@Param			organizationId	path		string							true	"organizationId"
@Param			body			body		domain.UpdateMyProfileRequest	true	"Required fields: password due to double-check"
@Success		200				{object}	domain.UpdateMyProfileResponse
@Router			/organizations/{organizationId}/my-profile [put]
@Security		JWT

func (UserHandler) UpdateUsers

func (u UserHandler) UpdateUsers(w http.ResponseWriter, r *http.Request)

UpdateUsers godoc

@Tags			Users
@Summary		Update multiple users
@Description	Update multiple users
@Accept			json
@Produce		json
@Param			organizationId	path	string						true	"organizationId"
@Param			body			body	[]domain.UpdateUsersRequest	true	"input"
@Success		200
@Router			/organizations/{organizationId}/users [put]
@Security		JWT

Jump to

Keyboard shortcuts

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