82 lines
1.7 KiB
Protocol Buffer
82 lines
1.7 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package mapfixes;
|
|
|
|
option go_package = "git.itzana.me/strafesnet/go-grpc/mapfixes";
|
|
|
|
service MapfixesService {
|
|
rpc Get(MapfixId) returns (MapfixResponse);
|
|
rpc GetList(MapfixIdList) returns (MapfixList);
|
|
rpc List(ListRequest) returns (MapfixList);
|
|
}
|
|
|
|
message MapfixIdList {
|
|
repeated int64 ID = 1;
|
|
}
|
|
|
|
message MapfixId {
|
|
int64 ID = 1;
|
|
}
|
|
|
|
enum MapfixStatus {
|
|
// Phase: Creation
|
|
MapfixStatusUnderConstruction = 0;
|
|
MapfixStatusChangesRequested = 1;
|
|
|
|
// Phase: Review
|
|
MapfixStatusSubmitting = 2;
|
|
MapfixStatusSubmitted = 3;
|
|
|
|
// Phase: Testing
|
|
MapfixStatusAcceptedUnvalidated = 4; // pending script review, can re-trigger validation
|
|
MapfixStatusValidating = 5;
|
|
MapfixStatusValidated = 6;
|
|
MapfixStatusUploading = 7;
|
|
MapfixStatusUploaded = 8; // uploaded to the group, but pending release
|
|
MapfixStatusReleasing = 11;
|
|
|
|
// Phase: Final MapfixStatus
|
|
MapfixStatusRejected = 9;
|
|
MapfixStatusReleased = 10;
|
|
}
|
|
|
|
message MapfixResponse {
|
|
int64 ID = 1;
|
|
string DisplayName = 2;
|
|
string Creator = 3;
|
|
uint32 GameID = 4;
|
|
int64 CreatedAt = 5;
|
|
int64 UpdatedAt = 6;
|
|
uint64 Submitter = 7;
|
|
uint64 AssetID = 8;
|
|
uint64 AssetVersion = 9;
|
|
optional uint64 ValidatedAssetID = 10;
|
|
optional uint64 ValidatedAssetVersion = 11;
|
|
uint64 TargetAssetID = 12;
|
|
MapfixStatus StatusID = 13;
|
|
}
|
|
|
|
message MapfixFilter {
|
|
optional MapfixStatus StatusID = 1;
|
|
optional string DisplayName = 2;
|
|
optional string Creator = 3;
|
|
optional uint32 GameID = 4;
|
|
optional uint64 Submitter = 5;
|
|
}
|
|
|
|
message MapfixList {
|
|
repeated MapfixResponse Mapfixes = 1;
|
|
}
|
|
|
|
message ListRequest {
|
|
MapfixFilter Filter = 1;
|
|
Pagination Page = 2;
|
|
}
|
|
|
|
message Pagination {
|
|
uint32 Size = 1;
|
|
uint32 Number = 2;
|
|
}
|
|
|
|
message NullResponse {}
|