mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-03 21:08:25 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			82 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
// Copyright 2017 The Gitea Authors. All rights reserved.
 | 
						|
// SPDX-License-Identifier: MIT
 | 
						|
 | 
						|
package structs
 | 
						|
 | 
						|
import (
 | 
						|
	"time"
 | 
						|
)
 | 
						|
 | 
						|
// LFSLock represent a lock
 | 
						|
// for use with the locks API.
 | 
						|
type LFSLock struct {
 | 
						|
	// The unique identifier of the lock
 | 
						|
	ID string `json:"id"`
 | 
						|
	// The file path that is locked
 | 
						|
	Path string `json:"path"`
 | 
						|
	// The timestamp when the lock was created
 | 
						|
	LockedAt time.Time `json:"locked_at"`
 | 
						|
	// The owner of the lock
 | 
						|
	Owner *LFSLockOwner `json:"owner"`
 | 
						|
}
 | 
						|
 | 
						|
// LFSLockOwner represent a lock owner
 | 
						|
// for use with the locks API.
 | 
						|
type LFSLockOwner struct {
 | 
						|
	// The name of the lock owner
 | 
						|
	Name string `json:"name"`
 | 
						|
}
 | 
						|
 | 
						|
// LFSLockRequest contains the path of the lock to create
 | 
						|
// https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#create-lock
 | 
						|
type LFSLockRequest struct {
 | 
						|
	// The file path to lock
 | 
						|
	Path string `json:"path"`
 | 
						|
}
 | 
						|
 | 
						|
// LFSLockResponse represent a lock created
 | 
						|
// https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#create-lock
 | 
						|
type LFSLockResponse struct {
 | 
						|
	// The created lock
 | 
						|
	Lock *LFSLock `json:"lock"`
 | 
						|
}
 | 
						|
 | 
						|
// LFSLockList represent a list of lock requested
 | 
						|
// https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#list-locks
 | 
						|
type LFSLockList struct {
 | 
						|
	// The list of locks
 | 
						|
	Locks []*LFSLock `json:"locks"`
 | 
						|
	// The cursor for pagination to the next set of results
 | 
						|
	Next string `json:"next_cursor,omitempty"`
 | 
						|
}
 | 
						|
 | 
						|
// LFSLockListVerify represent a list of lock verification requested
 | 
						|
// https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#list-locks-for-verification
 | 
						|
type LFSLockListVerify struct {
 | 
						|
	// Locks owned by the requesting user
 | 
						|
	Ours []*LFSLock `json:"ours"`
 | 
						|
	// Locks owned by other users
 | 
						|
	Theirs []*LFSLock `json:"theirs"`
 | 
						|
	// The cursor for pagination to the next set of results
 | 
						|
	Next string `json:"next_cursor,omitempty"`
 | 
						|
}
 | 
						|
 | 
						|
// LFSLockError contains information on the error that occurs
 | 
						|
type LFSLockError struct {
 | 
						|
	// The error message
 | 
						|
	Message string `json:"message"`
 | 
						|
	// The lock related to the error, if any
 | 
						|
	Lock *LFSLock `json:"lock,omitempty"`
 | 
						|
	// URL to documentation about the error
 | 
						|
	Documentation string `json:"documentation_url,omitempty"`
 | 
						|
	// The request ID for debugging purposes
 | 
						|
	RequestID string `json:"request_id,omitempty"`
 | 
						|
}
 | 
						|
 | 
						|
// LFSLockDeleteRequest contains params of a delete request
 | 
						|
// https://github.com/git-lfs/git-lfs/blob/master/docs/api/locking.md#delete-lock
 | 
						|
type LFSLockDeleteRequest struct {
 | 
						|
	// Whether to force delete the lock even if not owned by the requester
 | 
						|
	Force bool `json:"force"`
 | 
						|
}
 |