Update protobuf definitions: 5121916c

By allanger

Commit link: 5121916c38

Pipeline link: https://ci.badhouseplants.net/repos/34/pipeline/77
This commit is contained in:
2026-05-15 13:21:54 +00:00
parent 5041195797
commit 2bb55ac0fb
3 changed files with 1447 additions and 0 deletions

813
APIDoc.md Normal file
View File

@@ -0,0 +1,813 @@
# Protocol Documentation
<a name="top"></a>
## Table of Contents
- [accounts/v1/accounts_v1.proto](#accounts_v1_accounts_v1-proto)
- [AccountData](#accounts-v1-AccountData)
- [AccountPassword](#accounts-v1-AccountPassword)
- [IsEmailVerifiedRequest](#accounts-v1-IsEmailVerifiedRequest)
- [IsEmailVerifiedResponse](#accounts-v1-IsEmailVerifiedResponse)
- [NewPasswordRequest](#accounts-v1-NewPasswordRequest)
- [RefreshTokenRequest](#accounts-v1-RefreshTokenRequest)
- [ResetPasswordRequest](#accounts-v1-ResetPasswordRequest)
- [SignInRequest](#accounts-v1-SignInRequest)
- [SignUpRequest](#accounts-v1-SignUpRequest)
- [AccountsService](#accounts-v1-AccountsService)
- [PublicAccountsService](#accounts-v1-PublicAccountsService)
- [projects/v1/projects_v1.proto](#projects_v1_projects_v1-proto)
- [CreateProjectRequest](#projects-v1-CreateProjectRequest)
- [CreateProjectResponse](#projects-v1-CreateProjectResponse)
- [GetProjectRequest](#projects-v1-GetProjectRequest)
- [GetProjectResponse](#projects-v1-GetProjectResponse)
- [ListProjectsRequest](#projects-v1-ListProjectsRequest)
- [ListProjectsResponse](#projects-v1-ListProjectsResponse)
- [UpdateProjectRequest](#projects-v1-UpdateProjectRequest)
- [UpdateProjectResponse](#projects-v1-UpdateProjectResponse)
- [ProjectsService](#projects-v1-ProjectsService)
- [test/v1/test_v1.proto](#test_v1_test_v1-proto)
- [PingRequest](#test-v1-PingRequest)
- [PingResponse](#test-v1-PingResponse)
- [PingStreamResponse](#test-v1-PingStreamResponse)
- [PongRequest](#test-v1-PongRequest)
- [PongResponse](#test-v1-PongResponse)
- [PongStreamResponse](#test-v1-PongStreamResponse)
- [PublicTestService](#test-v1-PublicTestService)
- [TestService](#test-v1-TestService)
- [tokens/v1/tokens_v1.proto](#tokens_v1_tokens_v1-proto)
- [AuthenticateWithTokenRequest](#tokens-v1-AuthenticateWithTokenRequest)
- [CreateTokenRequest](#tokens-v1-CreateTokenRequest)
- [CreateTokenResponse](#tokens-v1-CreateTokenResponse)
- [ForceTokenExpirationRequest](#tokens-v1-ForceTokenExpirationRequest)
- [GetTokenRequest](#tokens-v1-GetTokenRequest)
- [GetTokenResponse](#tokens-v1-GetTokenResponse)
- [ListPermissionsResponse](#tokens-v1-ListPermissionsResponse)
- [ListTokensResponse](#tokens-v1-ListTokensResponse)
- [MethodList](#tokens-v1-MethodList)
- [RegenerateTokenRequest](#tokens-v1-RegenerateTokenRequest)
- [RegenerateTokenResponse](#tokens-v1-RegenerateTokenResponse)
- [TokenMetadata](#tokens-v1-TokenMetadata)
- [TokenPermissions](#tokens-v1-TokenPermissions)
- [TokenPermissions.PermissionsEntry](#tokens-v1-TokenPermissions-PermissionsEntry)
- [TokenUUID](#tokens-v1-TokenUUID)
- [TokenValue](#tokens-v1-TokenValue)
- [UpdateTokenRequest](#tokens-v1-UpdateTokenRequest)
- [UpdateTokenResponse](#tokens-v1-UpdateTokenResponse)
- [PublicTokensService](#tokens-v1-PublicTokensService)
- [TokensService](#tokens-v1-TokensService)
- [Scalar Value Types](#scalar-value-types)
<a name="accounts_v1_accounts_v1-proto"></a>
<p align="right"><a href="#top">Top</a></p>
## accounts/v1/accounts_v1.proto
Protobuf definitions for the accounts service.
<a name="accounts-v1-AccountData"></a>
### AccountData
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| name | [string](#string) | | Account name |
| email | [string](#string) | | Account email |
<a name="accounts-v1-AccountPassword"></a>
### AccountPassword
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| password | [string](#string) | | |
<a name="accounts-v1-IsEmailVerifiedRequest"></a>
### IsEmailVerifiedRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| data | [AccountData](#accounts-v1-AccountData) | | |
<a name="accounts-v1-IsEmailVerifiedResponse"></a>
### IsEmailVerifiedResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| verified | [bool](#bool) | | |
<a name="accounts-v1-NewPasswordRequest"></a>
### NewPasswordRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| data | [AccountData](#accounts-v1-AccountData) | | |
| password | [AccountPassword](#accounts-v1-AccountPassword) | | |
| code | [string](#string) | | |
<a name="accounts-v1-RefreshTokenRequest"></a>
### RefreshTokenRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| session_id | [string](#string) | | |
<a name="accounts-v1-ResetPasswordRequest"></a>
### ResetPasswordRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| data | [AccountData](#accounts-v1-AccountData) | | |
<a name="accounts-v1-SignInRequest"></a>
### SignInRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| email | [string](#string) | | |
| password | [string](#string) | | |
<a name="accounts-v1-SignUpRequest"></a>
### SignUpRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| email | [string](#string) | | |
| password | [string](#string) | | |
<a name="accounts-v1-AccountsService"></a>
### AccountsService
| Method Name | Request Type | Response Type | Description |
| ----------- | ------------ | ------------- | ------------|
| IsEmailVerified | [IsEmailVerifiedRequest](#accounts-v1-IsEmailVerifiedRequest) | [IsEmailVerifiedResponse](#accounts-v1-IsEmailVerifiedResponse) | Is email for the current account verified |
| RefreshSession | [.google.protobuf.Empty](#google-protobuf-Empty) | [.google.protobuf.Empty](#google-protobuf-Empty) | |
| TokenAuthorization | [.google.protobuf.Empty](#google-protobuf-Empty) | [.google.protobuf.Empty](#google-protobuf-Empty) | Authorize using long living tokens |
<a name="accounts-v1-PublicAccountsService"></a>
### PublicAccountsService
Service for handling accounts that do not require authentication
| Method Name | Request Type | Response Type | Description |
| ----------- | ------------ | ------------- | ------------|
| SignIn | [SignInRequest](#accounts-v1-SignInRequest) | [.google.protobuf.Empty](#google-protobuf-Empty) | Sing in into an existing account |
| SignUp | [SignUpRequest](#accounts-v1-SignUpRequest) | [.google.protobuf.Empty](#google-protobuf-Empty) | Create a new account |
<a name="projects_v1_projects_v1-proto"></a>
<p align="right"><a href="#top">Top</a></p>
## projects/v1/projects_v1.proto
Protobuf definitions for the accounts service.
<a name="projects-v1-CreateProjectRequest"></a>
### CreateProjectRequest
<a name="projects-v1-CreateProjectResponse"></a>
### CreateProjectResponse
<a name="projects-v1-GetProjectRequest"></a>
### GetProjectRequest
<a name="projects-v1-GetProjectResponse"></a>
### GetProjectResponse
<a name="projects-v1-ListProjectsRequest"></a>
### ListProjectsRequest
<a name="projects-v1-ListProjectsResponse"></a>
### ListProjectsResponse
<a name="projects-v1-UpdateProjectRequest"></a>
### UpdateProjectRequest
<a name="projects-v1-UpdateProjectResponse"></a>
### UpdateProjectResponse
<a name="projects-v1-ProjectsService"></a>
### ProjectsService
| Method Name | Request Type | Response Type | Description |
| ----------- | ------------ | ------------- | ------------|
| CreateProject | [CreateProjectRequest](#projects-v1-CreateProjectRequest) | [CreateProjectResponse](#projects-v1-CreateProjectResponse) | |
| GetProject | [GetProjectRequest](#projects-v1-GetProjectRequest) | [GetProjectResponse](#projects-v1-GetProjectResponse) | |
| ListProjects | [ListProjectsRequest](#projects-v1-ListProjectsRequest) | [ListProjectsResponse](#projects-v1-ListProjectsResponse) stream | |
| UpdateProject | [UpdateProjectRequest](#projects-v1-UpdateProjectRequest) | [UpdateProjectResponse](#projects-v1-UpdateProjectResponse) | |
<a name="test_v1_test_v1-proto"></a>
<p align="right"><a href="#top">Top</a></p>
## test/v1/test_v1.proto
<a name="test-v1-PingRequest"></a>
### PingRequest
<a name="test-v1-PingResponse"></a>
### PingResponse
<a name="test-v1-PingStreamResponse"></a>
### PingStreamResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| dummy | [string](#string) | | |
<a name="test-v1-PongRequest"></a>
### PongRequest
<a name="test-v1-PongResponse"></a>
### PongResponse
<a name="test-v1-PongStreamResponse"></a>
### PongStreamResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| dummy | [string](#string) | | |
<a name="test-v1-PublicTestService"></a>
### PublicTestService
Service for handling environments
| Method Name | Request Type | Response Type | Description |
| ----------- | ------------ | ------------- | ------------|
| Ping | [PingRequest](#test-v1-PingRequest) | [PingResponse](#test-v1-PingResponse) | |
| PingStream | [.google.protobuf.Empty](#google-protobuf-Empty) | [PingStreamResponse](#test-v1-PingStreamResponse) stream | |
<a name="test-v1-TestService"></a>
### TestService
| Method Name | Request Type | Response Type | Description |
| ----------- | ------------ | ------------- | ------------|
| Pong | [PongRequest](#test-v1-PongRequest) | [PongResponse](#test-v1-PongResponse) | |
| PongStream | [.google.protobuf.Empty](#google-protobuf-Empty) | [PongStreamResponse](#test-v1-PongStreamResponse) stream | |
<a name="tokens_v1_tokens_v1-proto"></a>
<p align="right"><a href="#top">Top</a></p>
## tokens/v1/tokens_v1.proto
Protobuf definitions for the accounts service.
<a name="tokens-v1-AuthenticateWithTokenRequest"></a>
### AuthenticateWithTokenRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_value | [TokenValue](#tokens-v1-TokenValue) | | |
<a name="tokens-v1-CreateTokenRequest"></a>
### CreateTokenRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_metadata | [TokenMetadata](#tokens-v1-TokenMetadata) | | |
| token_permissions | [TokenPermissions](#tokens-v1-TokenPermissions) | | |
<a name="tokens-v1-CreateTokenResponse"></a>
### CreateTokenResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_value | [TokenValue](#tokens-v1-TokenValue) | | |
<a name="tokens-v1-ForceTokenExpirationRequest"></a>
### ForceTokenExpirationRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_uuid | [TokenUUID](#tokens-v1-TokenUUID) | | |
<a name="tokens-v1-GetTokenRequest"></a>
### GetTokenRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_uuid | [TokenUUID](#tokens-v1-TokenUUID) | | |
<a name="tokens-v1-GetTokenResponse"></a>
### GetTokenResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_uuid | [TokenUUID](#tokens-v1-TokenUUID) | | |
| token_metadata | [TokenMetadata](#tokens-v1-TokenMetadata) | | |
| token_permissions | [TokenPermissions](#tokens-v1-TokenPermissions) | | |
<a name="tokens-v1-ListPermissionsResponse"></a>
### ListPermissionsResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| permissions | [TokenPermissions](#tokens-v1-TokenPermissions) | | |
<a name="tokens-v1-ListTokensResponse"></a>
### ListTokensResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_uuid | [TokenUUID](#tokens-v1-TokenUUID) | | |
| token_metadata | [TokenMetadata](#tokens-v1-TokenMetadata) | | |
| token_permissions | [TokenPermissions](#tokens-v1-TokenPermissions) | | |
<a name="tokens-v1-MethodList"></a>
### MethodList
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| methods | [string](#string) | repeated | |
<a name="tokens-v1-RegenerateTokenRequest"></a>
### RegenerateTokenRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_uuid | [TokenUUID](#tokens-v1-TokenUUID) | | |
<a name="tokens-v1-RegenerateTokenResponse"></a>
### RegenerateTokenResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_value | [TokenValue](#tokens-v1-TokenValue) | | |
<a name="tokens-v1-TokenMetadata"></a>
### TokenMetadata
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| name | [string](#string) | | A token name |
| expires_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Token expiration timestamp |
| last_used_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | When the token was used the last time |
| generated_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | When was the current token generated |
| created_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | When was the current token entry created |
| revoked_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | When was the token revoked |
<a name="tokens-v1-TokenPermissions"></a>
### TokenPermissions
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| permissions | [TokenPermissions.PermissionsEntry](#tokens-v1-TokenPermissions-PermissionsEntry) | repeated | |
<a name="tokens-v1-TokenPermissions-PermissionsEntry"></a>
### TokenPermissions.PermissionsEntry
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| key | [string](#string) | | |
| value | [MethodList](#tokens-v1-MethodList) | | |
<a name="tokens-v1-TokenUUID"></a>
### TokenUUID
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| uuid | [string](#string) | | An ID of a token |
<a name="tokens-v1-TokenValue"></a>
### TokenValue
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token | [string](#string) | | Token value Can be only retrieved once after the generation |
<a name="tokens-v1-UpdateTokenRequest"></a>
### UpdateTokenRequest
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_uuid | [TokenUUID](#tokens-v1-TokenUUID) | | |
| token_metadata | [TokenMetadata](#tokens-v1-TokenMetadata) | | |
| token_permissions | [TokenPermissions](#tokens-v1-TokenPermissions) | | |
<a name="tokens-v1-UpdateTokenResponse"></a>
### UpdateTokenResponse
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| token_uuid | [TokenUUID](#tokens-v1-TokenUUID) | | |
| token_metadata | [TokenMetadata](#tokens-v1-TokenMetadata) | | |
| token_permissions | [TokenPermissions](#tokens-v1-TokenPermissions) | | |
<a name="tokens-v1-PublicTokensService"></a>
### PublicTokensService
An endpoint to authenticate with a token should be here
| Method Name | Request Type | Response Type | Description |
| ----------- | ------------ | ------------- | ------------|
| AuthenticateWithToken | [AuthenticateWithTokenRequest](#tokens-v1-AuthenticateWithTokenRequest) | [.google.protobuf.Empty](#google-protobuf-Empty) | Recieve a JWT access token DO NOT implement it in the web app! |
<a name="tokens-v1-TokensService"></a>
### TokensService
Tokens should be used for programmatic access
For example CLI or terraform modules
| Method Name | Request Type | Response Type | Description |
| ----------- | ------------ | ------------- | ------------|
| CreateToken | [CreateTokenRequest](#tokens-v1-CreateTokenRequest) | [CreateTokenResponse](#tokens-v1-CreateTokenResponse) | Create a new token |
| UpdateToken | [UpdateTokenRequest](#tokens-v1-UpdateTokenRequest) | [UpdateTokenResponse](#tokens-v1-UpdateTokenResponse) | Update an existing token |
| ForceTokenExpiration | [ForceTokenExpirationRequest](#tokens-v1-ForceTokenExpirationRequest) | [.google.protobuf.Empty](#google-protobuf-Empty) | Expire an existing token |
| RegenerateToken | [RegenerateTokenRequest](#tokens-v1-RegenerateTokenRequest) | [RegenerateTokenResponse](#tokens-v1-RegenerateTokenResponse) | Create a new token with the same UUID |
| GetToken | [GetTokenRequest](#tokens-v1-GetTokenRequest) | [GetTokenResponse](#tokens-v1-GetTokenResponse) | Get an existing token |
| ListTokens | [.google.protobuf.Empty](#google-protobuf-Empty) | [ListTokensResponse](#tokens-v1-ListTokensResponse) stream | List all existing tokens |
| ListPermissions | [.google.protobuf.Empty](#google-protobuf-Empty) | [ListPermissionsResponse](#tokens-v1-ListPermissionsResponse) stream | List all available permissions |
## Scalar Value Types
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- |
| <a name="double" /> double | | double | double | float | float64 | double | float | Float |
| <a name="float" /> float | | float | float | float | float32 | float | float | Float |
| <a name="int32" /> int32 | Uses variable-length encoding. Inefficient for encoding negative numbers if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| <a name="int64" /> int64 | Uses variable-length encoding. Inefficient for encoding negative numbers if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| <a name="uint32" /> uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) |
| <a name="uint64" /> uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) |
| <a name="sint32" /> sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| <a name="sint64" /> sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| <a name="fixed32" /> fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) |
| <a name="fixed64" /> fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum |
| <a name="sfixed32" /> sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| <a name="sfixed64" /> sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| <a name="bool" /> bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass |
| <a name="string" /> string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
| <a name="bytes" /> bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |

View File

@@ -0,0 +1,395 @@
/// Protobuf definitions for the accounts service.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.11
// protoc (unknown)
// source: projects/v1/projects_v1.proto
package v1
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
unsafe "unsafe"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type CreateProjectRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CreateProjectRequest) Reset() {
*x = CreateProjectRequest{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateProjectRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateProjectRequest) ProtoMessage() {}
func (x *CreateProjectRequest) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[0]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateProjectRequest.ProtoReflect.Descriptor instead.
func (*CreateProjectRequest) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{0}
}
type CreateProjectResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *CreateProjectResponse) Reset() {
*x = CreateProjectResponse{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *CreateProjectResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateProjectResponse) ProtoMessage() {}
func (x *CreateProjectResponse) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[1]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateProjectResponse.ProtoReflect.Descriptor instead.
func (*CreateProjectResponse) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{1}
}
type GetProjectRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetProjectRequest) Reset() {
*x = GetProjectRequest{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetProjectRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetProjectRequest) ProtoMessage() {}
func (x *GetProjectRequest) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[2]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetProjectRequest.ProtoReflect.Descriptor instead.
func (*GetProjectRequest) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{2}
}
type GetProjectResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *GetProjectResponse) Reset() {
*x = GetProjectResponse{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *GetProjectResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetProjectResponse) ProtoMessage() {}
func (x *GetProjectResponse) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[3]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetProjectResponse.ProtoReflect.Descriptor instead.
func (*GetProjectResponse) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{3}
}
type ListProjectsRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListProjectsRequest) Reset() {
*x = ListProjectsRequest{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListProjectsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListProjectsRequest) ProtoMessage() {}
func (x *ListProjectsRequest) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[4]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListProjectsRequest.ProtoReflect.Descriptor instead.
func (*ListProjectsRequest) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{4}
}
type ListProjectsResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ListProjectsResponse) Reset() {
*x = ListProjectsResponse{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ListProjectsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListProjectsResponse) ProtoMessage() {}
func (x *ListProjectsResponse) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[5]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListProjectsResponse.ProtoReflect.Descriptor instead.
func (*ListProjectsResponse) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{5}
}
type UpdateProjectRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UpdateProjectRequest) Reset() {
*x = UpdateProjectRequest{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateProjectRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateProjectRequest) ProtoMessage() {}
func (x *UpdateProjectRequest) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[6]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateProjectRequest.ProtoReflect.Descriptor instead.
func (*UpdateProjectRequest) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{6}
}
type UpdateProjectResponse struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UpdateProjectResponse) Reset() {
*x = UpdateProjectResponse{}
mi := &file_projects_v1_projects_v1_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UpdateProjectResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateProjectResponse) ProtoMessage() {}
func (x *UpdateProjectResponse) ProtoReflect() protoreflect.Message {
mi := &file_projects_v1_projects_v1_proto_msgTypes[7]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UpdateProjectResponse.ProtoReflect.Descriptor instead.
func (*UpdateProjectResponse) Descriptor() ([]byte, []int) {
return file_projects_v1_projects_v1_proto_rawDescGZIP(), []int{7}
}
var File_projects_v1_projects_v1_proto protoreflect.FileDescriptor
const file_projects_v1_projects_v1_proto_rawDesc = "" +
"\n" +
"\x1dprojects/v1/projects_v1.proto\x12\vprojects.v1\"\x16\n" +
"\x14CreateProjectRequest\"\x17\n" +
"\x15CreateProjectResponse\"\x13\n" +
"\x11GetProjectRequest\"\x14\n" +
"\x12GetProjectResponse\"\x15\n" +
"\x13ListProjectsRequest\"\x16\n" +
"\x14ListProjectsResponse\"\x16\n" +
"\x14UpdateProjectRequest\"\x17\n" +
"\x15UpdateProjectResponse2\xef\x02\n" +
"\x0fProjectsService\x12X\n" +
"\rCreateProject\x12!.projects.v1.CreateProjectRequest\x1a\".projects.v1.CreateProjectResponse\"\x00\x12O\n" +
"\n" +
"GetProject\x12\x1e.projects.v1.GetProjectRequest\x1a\x1f.projects.v1.GetProjectResponse\"\x00\x12W\n" +
"\fListProjects\x12 .projects.v1.ListProjectsRequest\x1a!.projects.v1.ListProjectsResponse\"\x000\x01\x12X\n" +
"\rUpdateProject\x12!.projects.v1.UpdateProjectRequest\x1a\".projects.v1.UpdateProjectResponse\"\x00BIZGgitea.badhouseplants.net/softplayer/softplayer-go-proto/pkg/projects/v1b\x06proto3"
var (
file_projects_v1_projects_v1_proto_rawDescOnce sync.Once
file_projects_v1_projects_v1_proto_rawDescData []byte
)
func file_projects_v1_projects_v1_proto_rawDescGZIP() []byte {
file_projects_v1_projects_v1_proto_rawDescOnce.Do(func() {
file_projects_v1_projects_v1_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_projects_v1_projects_v1_proto_rawDesc), len(file_projects_v1_projects_v1_proto_rawDesc)))
})
return file_projects_v1_projects_v1_proto_rawDescData
}
var file_projects_v1_projects_v1_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
var file_projects_v1_projects_v1_proto_goTypes = []any{
(*CreateProjectRequest)(nil), // 0: projects.v1.CreateProjectRequest
(*CreateProjectResponse)(nil), // 1: projects.v1.CreateProjectResponse
(*GetProjectRequest)(nil), // 2: projects.v1.GetProjectRequest
(*GetProjectResponse)(nil), // 3: projects.v1.GetProjectResponse
(*ListProjectsRequest)(nil), // 4: projects.v1.ListProjectsRequest
(*ListProjectsResponse)(nil), // 5: projects.v1.ListProjectsResponse
(*UpdateProjectRequest)(nil), // 6: projects.v1.UpdateProjectRequest
(*UpdateProjectResponse)(nil), // 7: projects.v1.UpdateProjectResponse
}
var file_projects_v1_projects_v1_proto_depIdxs = []int32{
0, // 0: projects.v1.ProjectsService.CreateProject:input_type -> projects.v1.CreateProjectRequest
2, // 1: projects.v1.ProjectsService.GetProject:input_type -> projects.v1.GetProjectRequest
4, // 2: projects.v1.ProjectsService.ListProjects:input_type -> projects.v1.ListProjectsRequest
6, // 3: projects.v1.ProjectsService.UpdateProject:input_type -> projects.v1.UpdateProjectRequest
1, // 4: projects.v1.ProjectsService.CreateProject:output_type -> projects.v1.CreateProjectResponse
3, // 5: projects.v1.ProjectsService.GetProject:output_type -> projects.v1.GetProjectResponse
5, // 6: projects.v1.ProjectsService.ListProjects:output_type -> projects.v1.ListProjectsResponse
7, // 7: projects.v1.ProjectsService.UpdateProject:output_type -> projects.v1.UpdateProjectResponse
4, // [4:8] is the sub-list for method output_type
0, // [0:4] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_projects_v1_projects_v1_proto_init() }
func file_projects_v1_projects_v1_proto_init() {
if File_projects_v1_projects_v1_proto != nil {
return
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_projects_v1_projects_v1_proto_rawDesc), len(file_projects_v1_projects_v1_proto_rawDesc)),
NumEnums: 0,
NumMessages: 8,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_projects_v1_projects_v1_proto_goTypes,
DependencyIndexes: file_projects_v1_projects_v1_proto_depIdxs,
MessageInfos: file_projects_v1_projects_v1_proto_msgTypes,
}.Build()
File_projects_v1_projects_v1_proto = out.File
file_projects_v1_projects_v1_proto_goTypes = nil
file_projects_v1_projects_v1_proto_depIdxs = nil
}

View File

@@ -0,0 +1,239 @@
/// Protobuf definitions for the accounts service.
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.6.2
// - protoc (unknown)
// source: projects/v1/projects_v1.proto
package v1
import (
context "context"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
)
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.64.0 or later.
const _ = grpc.SupportPackageIsVersion9
const (
ProjectsService_CreateProject_FullMethodName = "/projects.v1.ProjectsService/CreateProject"
ProjectsService_GetProject_FullMethodName = "/projects.v1.ProjectsService/GetProject"
ProjectsService_ListProjects_FullMethodName = "/projects.v1.ProjectsService/ListProjects"
ProjectsService_UpdateProject_FullMethodName = "/projects.v1.ProjectsService/UpdateProject"
)
// ProjectsServiceClient is the client API for ProjectsService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type ProjectsServiceClient interface {
CreateProject(ctx context.Context, in *CreateProjectRequest, opts ...grpc.CallOption) (*CreateProjectResponse, error)
GetProject(ctx context.Context, in *GetProjectRequest, opts ...grpc.CallOption) (*GetProjectResponse, error)
ListProjects(ctx context.Context, in *ListProjectsRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[ListProjectsResponse], error)
UpdateProject(ctx context.Context, in *UpdateProjectRequest, opts ...grpc.CallOption) (*UpdateProjectResponse, error)
}
type projectsServiceClient struct {
cc grpc.ClientConnInterface
}
func NewProjectsServiceClient(cc grpc.ClientConnInterface) ProjectsServiceClient {
return &projectsServiceClient{cc}
}
func (c *projectsServiceClient) CreateProject(ctx context.Context, in *CreateProjectRequest, opts ...grpc.CallOption) (*CreateProjectResponse, error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
out := new(CreateProjectResponse)
err := c.cc.Invoke(ctx, ProjectsService_CreateProject_FullMethodName, in, out, cOpts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *projectsServiceClient) GetProject(ctx context.Context, in *GetProjectRequest, opts ...grpc.CallOption) (*GetProjectResponse, error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
out := new(GetProjectResponse)
err := c.cc.Invoke(ctx, ProjectsService_GetProject_FullMethodName, in, out, cOpts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *projectsServiceClient) ListProjects(ctx context.Context, in *ListProjectsRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[ListProjectsResponse], error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
stream, err := c.cc.NewStream(ctx, &ProjectsService_ServiceDesc.Streams[0], ProjectsService_ListProjects_FullMethodName, cOpts...)
if err != nil {
return nil, err
}
x := &grpc.GenericClientStream[ListProjectsRequest, ListProjectsResponse]{ClientStream: stream}
if err := x.ClientStream.SendMsg(in); err != nil {
return nil, err
}
if err := x.ClientStream.CloseSend(); err != nil {
return nil, err
}
return x, nil
}
// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type ProjectsService_ListProjectsClient = grpc.ServerStreamingClient[ListProjectsResponse]
func (c *projectsServiceClient) UpdateProject(ctx context.Context, in *UpdateProjectRequest, opts ...grpc.CallOption) (*UpdateProjectResponse, error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
out := new(UpdateProjectResponse)
err := c.cc.Invoke(ctx, ProjectsService_UpdateProject_FullMethodName, in, out, cOpts...)
if err != nil {
return nil, err
}
return out, nil
}
// ProjectsServiceServer is the server API for ProjectsService service.
// All implementations should embed UnimplementedProjectsServiceServer
// for forward compatibility.
type ProjectsServiceServer interface {
CreateProject(context.Context, *CreateProjectRequest) (*CreateProjectResponse, error)
GetProject(context.Context, *GetProjectRequest) (*GetProjectResponse, error)
ListProjects(*ListProjectsRequest, grpc.ServerStreamingServer[ListProjectsResponse]) error
UpdateProject(context.Context, *UpdateProjectRequest) (*UpdateProjectResponse, error)
}
// UnimplementedProjectsServiceServer should be embedded to have
// forward compatible implementations.
//
// NOTE: this should be embedded by value instead of pointer to avoid a nil
// pointer dereference when methods are called.
type UnimplementedProjectsServiceServer struct{}
func (UnimplementedProjectsServiceServer) CreateProject(context.Context, *CreateProjectRequest) (*CreateProjectResponse, error) {
return nil, status.Error(codes.Unimplemented, "method CreateProject not implemented")
}
func (UnimplementedProjectsServiceServer) GetProject(context.Context, *GetProjectRequest) (*GetProjectResponse, error) {
return nil, status.Error(codes.Unimplemented, "method GetProject not implemented")
}
func (UnimplementedProjectsServiceServer) ListProjects(*ListProjectsRequest, grpc.ServerStreamingServer[ListProjectsResponse]) error {
return status.Error(codes.Unimplemented, "method ListProjects not implemented")
}
func (UnimplementedProjectsServiceServer) UpdateProject(context.Context, *UpdateProjectRequest) (*UpdateProjectResponse, error) {
return nil, status.Error(codes.Unimplemented, "method UpdateProject not implemented")
}
func (UnimplementedProjectsServiceServer) testEmbeddedByValue() {}
// UnsafeProjectsServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to ProjectsServiceServer will
// result in compilation errors.
type UnsafeProjectsServiceServer interface {
mustEmbedUnimplementedProjectsServiceServer()
}
func RegisterProjectsServiceServer(s grpc.ServiceRegistrar, srv ProjectsServiceServer) {
// If the following call panics, it indicates UnimplementedProjectsServiceServer was
// embedded by pointer and is nil. This will cause panics if an
// unimplemented method is ever invoked, so we test this at initialization
// time to prevent it from happening at runtime later due to I/O.
if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
t.testEmbeddedByValue()
}
s.RegisterService(&ProjectsService_ServiceDesc, srv)
}
func _ProjectsService_CreateProject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateProjectRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ProjectsServiceServer).CreateProject(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: ProjectsService_CreateProject_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ProjectsServiceServer).CreateProject(ctx, req.(*CreateProjectRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ProjectsService_GetProject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetProjectRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ProjectsServiceServer).GetProject(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: ProjectsService_GetProject_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ProjectsServiceServer).GetProject(ctx, req.(*GetProjectRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ProjectsService_ListProjects_Handler(srv interface{}, stream grpc.ServerStream) error {
m := new(ListProjectsRequest)
if err := stream.RecvMsg(m); err != nil {
return err
}
return srv.(ProjectsServiceServer).ListProjects(m, &grpc.GenericServerStream[ListProjectsRequest, ListProjectsResponse]{ServerStream: stream})
}
// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type ProjectsService_ListProjectsServer = grpc.ServerStreamingServer[ListProjectsResponse]
func _ProjectsService_UpdateProject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateProjectRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ProjectsServiceServer).UpdateProject(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: ProjectsService_UpdateProject_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ProjectsServiceServer).UpdateProject(ctx, req.(*UpdateProjectRequest))
}
return interceptor(ctx, in, info, handler)
}
// ProjectsService_ServiceDesc is the grpc.ServiceDesc for ProjectsService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var ProjectsService_ServiceDesc = grpc.ServiceDesc{
ServiceName: "projects.v1.ProjectsService",
HandlerType: (*ProjectsServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "CreateProject",
Handler: _ProjectsService_CreateProject_Handler,
},
{
MethodName: "GetProject",
Handler: _ProjectsService_GetProject_Handler,
},
{
MethodName: "UpdateProject",
Handler: _ProjectsService_UpdateProject_Handler,
},
},
Streams: []grpc.StreamDesc{
{
StreamName: "ListProjects",
Handler: _ProjectsService_ListProjects_Handler,
ServerStreams: true,
},
},
Metadata: "projects/v1/projects_v1.proto",
}