| @@ -19,6 +19,7 @@ import ( | |||||
| "code.gitea.io/gitea/modules/sync" | "code.gitea.io/gitea/modules/sync" | ||||
| ) | ) | ||||
| // MirrorQueue holds an UniqueQueue object of the mirror | |||||
| var MirrorQueue = sync.NewUniqueQueue(setting.Repository.MirrorQueueLength) | var MirrorQueue = sync.NewUniqueQueue(setting.Repository.MirrorQueueLength) | ||||
| // Mirror represents mirror information of a repository. | // Mirror represents mirror information of a repository. | ||||
| @@ -37,16 +38,19 @@ type Mirror struct { | |||||
| address string `xorm:"-"` | address string `xorm:"-"` | ||||
| } | } | ||||
| // BeforeInsert will be invoked by XORM before inserting a record | |||||
| func (m *Mirror) BeforeInsert() { | func (m *Mirror) BeforeInsert() { | ||||
| m.UpdatedUnix = time.Now().Unix() | m.UpdatedUnix = time.Now().Unix() | ||||
| m.NextUpdateUnix = m.NextUpdate.Unix() | m.NextUpdateUnix = m.NextUpdate.Unix() | ||||
| } | } | ||||
| // BeforeUpdate is invoked from XORM before updating this object. | |||||
| func (m *Mirror) BeforeUpdate() { | func (m *Mirror) BeforeUpdate() { | ||||
| m.UpdatedUnix = time.Now().Unix() | m.UpdatedUnix = time.Now().Unix() | ||||
| m.NextUpdateUnix = m.NextUpdate.Unix() | m.NextUpdateUnix = m.NextUpdate.Unix() | ||||
| } | } | ||||
| // AfterSet is invoked from XORM after setting the value of a field of this object. | |||||
| func (m *Mirror) AfterSet(colName string, _ xorm.Cell) { | func (m *Mirror) AfterSet(colName string, _ xorm.Cell) { | ||||
| var err error | var err error | ||||
| switch colName { | switch colName { | ||||
| @@ -180,10 +184,12 @@ func updateMirror(e Engine, m *Mirror) error { | |||||
| return err | return err | ||||
| } | } | ||||
| // UpdateMirror updates the mirror | |||||
| func UpdateMirror(m *Mirror) error { | func UpdateMirror(m *Mirror) error { | ||||
| return updateMirror(x, m) | return updateMirror(x, m) | ||||
| } | } | ||||
| // DeleteMirrorByRepoID deletes a mirror by repoID | |||||
| func DeleteMirrorByRepoID(repoID int64) error { | func DeleteMirrorByRepoID(repoID int64) error { | ||||
| _, err := x.Delete(&Mirror{RepoID: repoID}) | _, err := x.Delete(&Mirror{RepoID: repoID}) | ||||
| return err | return err | ||||
| @@ -241,6 +247,7 @@ func SyncMirrors() { | |||||
| } | } | ||||
| } | } | ||||
| // InitSyncMirrors initializes a go routine to sync the mirros | |||||
| func InitSyncMirrors() { | func InitSyncMirrors() { | ||||
| go SyncMirrors() | go SyncMirrors() | ||||
| } | } | ||||