2021-11-13 21:18:06 +02:00
|
|
|
// Copyright 2021 Woodpecker Authors
|
2018-02-20 00:24:10 +02:00
|
|
|
// Copyright 2018 Drone.IO Inc.
|
2018-03-21 15:02:17 +02:00
|
|
|
//
|
2018-02-20 00:24:10 +02:00
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
// you may not use this file except in compliance with the License.
|
|
|
|
// You may obtain a copy of the License at
|
2018-03-21 15:02:17 +02:00
|
|
|
//
|
2018-02-20 00:24:10 +02:00
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
2018-03-21 15:02:17 +02:00
|
|
|
//
|
2018-02-20 00:24:10 +02:00
|
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
// See the License for the specific language governing permissions and
|
|
|
|
// limitations under the License.
|
|
|
|
|
2017-04-11 19:06:45 +02:00
|
|
|
package model
|
|
|
|
|
|
|
|
type SenderService interface {
|
2017-05-05 19:13:40 +02:00
|
|
|
SenderAllowed(*User, *Repo, *Build, *Config) (bool, error)
|
2017-04-11 19:06:45 +02:00
|
|
|
SenderCreate(*Repo, *Sender) error
|
|
|
|
SenderUpdate(*Repo, *Sender) error
|
|
|
|
SenderDelete(*Repo, string) error
|
|
|
|
SenderList(*Repo) ([]*Sender, error)
|
|
|
|
}
|
|
|
|
|
|
|
|
type SenderStore interface {
|
|
|
|
SenderFind(*Repo, string) (*Sender, error)
|
|
|
|
SenderList(*Repo) ([]*Sender, error)
|
|
|
|
SenderCreate(*Sender) error
|
|
|
|
SenderUpdate(*Sender) error
|
|
|
|
SenderDelete(*Sender) error
|
|
|
|
}
|
|
|
|
|
|
|
|
type Sender struct {
|
2021-11-13 21:18:06 +02:00
|
|
|
ID int64 `json:"-" xorm:"pk autoincr 'sender_id'"`
|
|
|
|
RepoID int64 `json:"-" xorm:"UNIQUE(s) INDEX 'sender_repo_id'"`
|
|
|
|
Login string `json:"login" xorm:"UNIQUE(s) 'sender_login'"`
|
|
|
|
Allow bool `json:"allow" xorm:"sender_allow"`
|
|
|
|
Block bool `json:"block" xorm:"sender_block"`
|
|
|
|
Branch []string `json:"branch" xorm:"-"`
|
|
|
|
Deploy []string `json:"deploy" xorm:"-"`
|
|
|
|
Event []string `json:"event" xorm:"-"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// TableName return database table name for xorm
|
|
|
|
func (Sender) TableName() string {
|
|
|
|
return "senders"
|
2017-04-11 19:06:45 +02:00
|
|
|
}
|