diff options
Diffstat (limited to 'receivepack/service/command.go')
| -rw-r--r-- | receivepack/service/command.go | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/receivepack/service/command.go b/receivepack/service/command.go new file mode 100644 index 00000000..33342e41 --- /dev/null +++ b/receivepack/service/command.go @@ -0,0 +1,32 @@ +package service + +import "codeberg.org/lindenii/furgit/objectid" + +// Command is one protocol-independent requested ref update. +type Command struct { + OldID objectid.ObjectID + NewID objectid.ObjectID + Name string +} + +func fillCommandErrors(result *Result, commands []Command, errText string) { + for _, command := range commands { + result.Commands = append(result.Commands, CommandResult{ + Name: command.Name, + Error: errText, + RefName: command.Name, + OldID: objectIDPointer(command.OldID), + NewID: objectIDPointer(command.NewID), + }) + } +} + +func isDelete(command Command) bool { + return command.NewID == objectid.Zero(command.NewID.Algorithm()) +} + +func objectIDPointer(id objectid.ObjectID) *objectid.ObjectID { + out := id + + return &out +} |
