Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMateusz Nowotyński <maxmati4@gmail.com>2019-11-29 02:24:46 +0300
committerjramsay <maxmati4@gmail.com>2020-02-06 22:29:01 +0300
commiteef10e2217463c7c3582604ebdebae36679e43f4 (patch)
tree8781b89a8c0320449d17871fc0112364171e25f7 /proto/objectpool.proto
parentfc5321467ae7f2a9d39e81f3f700495292fd785e (diff)
Use field annotation for target and additional repository
Instead of setting OID in the RPC method use annotation in the field (`target_repository` and `additional_repository`). Having only this 2 annotations created a problem with messages that can be either target or additional repository (for example `ObjectPool`). Those are marked with `repository` annotation and `target_repository` and `additional_repository` are used in the parent messages. Signed-off-by: Mateusz Nowotyński <maxmati4@gmail.com> Signed-off-by: jramsay <maxmati4@gmail.com>
Diffstat (limited to 'proto/objectpool.proto')
-rw-r--r--proto/objectpool.proto37
1 files changed, 13 insertions, 24 deletions
diff --git a/proto/objectpool.proto b/proto/objectpool.proto
index 128e7dfcc..be20ac526 100644
--- a/proto/objectpool.proto
+++ b/proto/objectpool.proto
@@ -10,13 +10,11 @@ service ObjectPoolService {
rpc CreateObjectPool(CreateObjectPoolRequest) returns (CreateObjectPoolResponse) {
option (op_type) = {
op: MUTATOR
- target_repository_field: "1.1"
- additional_repository_field: "2" };
+ };
}
rpc DeleteObjectPool(DeleteObjectPoolRequest) returns (DeleteObjectPoolResponse) {
option (op_type) = {
op: MUTATOR
- target_repository_field: "1.1"
};
}
@@ -24,41 +22,32 @@ service ObjectPoolService {
rpc LinkRepositoryToObjectPool(LinkRepositoryToObjectPoolRequest) returns (LinkRepositoryToObjectPoolResponse) {
option (op_type) = {
op: MUTATOR
- target_repository_field: "2"
- additional_repository_field: "1.1"
};
}
rpc UnlinkRepositoryFromObjectPool(UnlinkRepositoryFromObjectPoolRequest) returns (UnlinkRepositoryFromObjectPoolResponse) {
option (op_type) = {
op: MUTATOR
- target_repository_field: "1"
- additional_repository_field: "2"
};
}
rpc ReduplicateRepository(ReduplicateRepositoryRequest) returns (ReduplicateRepositoryResponse) {
option (op_type) = {
op: MUTATOR
- target_repository_field: "1"
};
}
rpc DisconnectGitAlternates(DisconnectGitAlternatesRequest) returns (DisconnectGitAlternatesResponse) {
option (op_type) = {
op: MUTATOR
- target_repository_field: "1"
};
}
rpc FetchIntoObjectPool(FetchIntoObjectPoolRequest) returns (FetchIntoObjectPoolResponse) {
option (op_type) = {
op: MUTATOR
- target_repository_field: "2.1"
- additional_repository_field: "1"
};
}
rpc GetObjectPool(GetObjectPoolRequest) returns (GetObjectPoolResponse) {
option (op_type) = {
op: ACCESSOR
- target_repository_field: "1"
};
}
}
@@ -66,52 +55,52 @@ service ObjectPoolService {
// Creates an object pool from the repository. The client is responsible for
// joining this pool later with this repository.
message CreateObjectPoolRequest {
- ObjectPool object_pool = 1; // already specified as the target repo field
- Repository origin = 2;
+ ObjectPool object_pool = 1 [(target_repository)=true];
+ Repository origin = 2 [(additional_repository)=true];
}
message CreateObjectPoolResponse {}
// Removes the directory from disk, caller is responsible for leaving the object
// pool before calling this RPC
message DeleteObjectPoolRequest {
- ObjectPool object_pool = 1;
+ ObjectPool object_pool = 1 [(target_repository)=true];
}
message DeleteObjectPoolResponse {}
message LinkRepositoryToObjectPoolRequest {
- ObjectPool object_pool = 1;
- Repository repository = 2;
+ ObjectPool object_pool = 1 [(additional_repository)=true];
+ Repository repository = 2 [(target_repository)=true];
}
message LinkRepositoryToObjectPoolResponse {}
// This RPC doesn't require the ObjectPool as it will remove the alternates file
// from the pool participant. The caller is responsible no data loss occurs.
message UnlinkRepositoryFromObjectPoolRequest {
- Repository repository = 1; // already specified as the target repo field
- ObjectPool object_pool = 2;
+ Repository repository = 1 [(target_repository)=true]; // already specified as the target repo field
+ ObjectPool object_pool = 2 [(additional_repository)=true];
}
message UnlinkRepositoryFromObjectPoolResponse {}
message ReduplicateRepositoryRequest {
- Repository repository = 1;
+ Repository repository = 1 [(target_repository)=true];
}
message ReduplicateRepositoryResponse {}
message DisconnectGitAlternatesRequest {
- Repository repository = 1;
+ Repository repository = 1 [(target_repository)=true];
}
message DisconnectGitAlternatesResponse {}
message FetchIntoObjectPoolRequest {
- Repository origin = 1;
- ObjectPool object_pool = 2;
+ Repository origin = 1 [(additional_repository)=true];
+ ObjectPool object_pool = 2 [(target_repository)=true];
bool repack = 3;
}
message FetchIntoObjectPoolResponse {}
message GetObjectPoolRequest {
- Repository repository = 1;
+ Repository repository = 1 [(target_repository)=true];
}
message GetObjectPoolResponse {