dapr-client 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 681a7749162ceb3e77996a080c24459c755cd9f29c4f0b27cdb60786cb21f161
4
- data.tar.gz: 73a5c8fa8873a45efe241052c7867422bf49a1d2bfbb78fe058bd3e4c82350e6
3
+ metadata.gz: 7513c69fe9529ced9c6a0d4aa98ef4ccd34e9bea66da811d0fca7a4d2c56538c
4
+ data.tar.gz: ccaab0c3d0b5d2ae34a4f81ad1004f849b7177082e2637426763a059120a9461
5
5
  SHA512:
6
- metadata.gz: 3f476fe1b3f24653a39b7d3043baa79e04b9b1fa2f719125fb3bb9a0f61aed0562d01262125ef99267067ef9a15e2f25afc0ee14ceb077ff8a335349c4d33150
7
- data.tar.gz: 439962d22770b4a002ffcaf9157e2b54d18a7ea3c2c235ba91cffcf4a12c1d5794d84e9fd82d6e6a5a748db41cfef2f8714491e949becf7ec408944972e39e97
6
+ metadata.gz: 81e1af0ad18be5cfd140f76eeb75fa13043e79b1685fa4c4e9681ab2015717fd39558e6b8ad30009e731b1606f47edead29a1142fbf5a91b4c5eb2c90f84290c
7
+ data.tar.gz: 6956a7e04d8ac0a820037791e479b386d5c6ecaffa8fd84c2690c17a8e83039cbf3a703e37d755ec3ba065080904df500f8c6750643ac2c0234f80f650d20fc7
data/CHANGELOG.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # dapr-client
2
2
 
3
+ ## v0.3.0
4
+ - Auto-generated client based on Dapr v1.0.0.
5
+
3
6
  ## v0.2.0
4
7
  - Auto-generated client based on Dapr v0.8.0.
5
8
 
data/README.md CHANGED
@@ -1,12 +1,16 @@
1
1
  # Dapr SDK for Ruby
2
2
 
3
- This is the Dapr SDK for Ruby, based on the auto-generated proto client.<br>
3
+ This is a Dapr SDK for Ruby, based on the auto-generated proto client.<br>
4
4
 
5
- For more info on Dapr and gRPC, visit [this link](https://github.com/dapr/docs/tree/master/howto/create-grpc-app).
5
+ For more infomation on Dapr and gRPC see the [getting started guides](https://docs.dapr.io/getting-started/).
6
6
 
7
7
  The repository generates the following package
8
8
  - dapr-client
9
9
 
10
+ ## Supported Versions
11
+
12
+ The auto-generated proto client and the examples is this repo are based on Dapr v1.0.0.
13
+
10
14
  ## Installation
11
15
 
12
16
  Add this line to your application's Gemfile:
@@ -28,19 +32,19 @@ Or install it yourself as:
28
32
  A client can be created as follows:
29
33
 
30
34
  ```ruby
31
- require "dapr_services_pb"
35
+ require "dapr/proto/runtime/v1/dapr_services_pb"
32
36
 
33
- client = Dapr::Dapr::Stub.new('localhost:5001', :this_channel_is_insecure)
37
+ client = Dapr::Proto::Runtime::V1::Dapr::Stub.new("localhost:#{ENV['DAPR_GRPC_PORT']}", :this_channel_is_insecure)
34
38
  ```
35
39
 
36
40
  You can find a complete example [here](https://github.com/tjwp/dapr-ruby-sdk/blob/master/example.rb)
37
41
 
38
- ### Running the code locally
42
+ ### Running the example code locally
39
43
 
40
44
  You can execute this code using the local dapr runtime:
41
45
 
42
46
  ```sh
43
- dapr run --protocol grpc --grpc-port=50001 ruby example.rb
47
+ dapr run --app-id ruby-example -- bundle exec ruby example.rb
44
48
  ```
45
49
 
46
50
  ## Development
data/bin/regen_client.sh CHANGED
@@ -11,5 +11,11 @@ bundle exec grpc_tools_ruby_protoc -I . --ruby_out=lib --grpc_out=lib dapr/proto
11
11
  bundle exec grpc_tools_ruby_protoc -I . --ruby_out=lib --grpc_out=lib dapr/proto/runtime/v1/dapr.proto
12
12
  bundle exec grpc_tools_ruby_protoc -I . --ruby_out=lib --grpc_out=lib dapr/proto/runtime/v1/appcallback.proto
13
13
 
14
+ # Prefix top-level Dapr constant in dapr_services_pb
15
+ dapr_services="lib/dapr/proto/runtime/v1/dapr_services_pb.rb"
16
+ mv $dapr_services ${dapr_services}.tmp
17
+ cat ${dapr_services}.tmp | sed -e "s/ Dapr::Proto/ ::Dapr::Proto/" > $dapr_services
18
+ rm ${dapr_services}.tmp
19
+
14
20
  set +x
15
21
  echo "Done."
@@ -1,5 +1,5 @@
1
1
  // ------------------------------------------------------------
2
- // Copyright (c) Microsoft Corporation.
2
+ // Copyright (c) Microsoft Corporation and Dapr Contributors.
3
3
  // Licensed under the MIT License.
4
4
  // ------------------------------------------------------------
5
5
 
@@ -8,7 +8,6 @@ syntax = "proto3";
8
8
  package dapr.proto.common.v1;
9
9
 
10
10
  import "google/protobuf/any.proto";
11
- import "google/protobuf/duration.proto";
12
11
 
13
12
  option csharp_namespace = "Dapr.Client.Autogen.Grpc.v1";
14
13
  option java_outer_classname = "CommonProtos";
@@ -40,8 +39,8 @@ message HTTPExtension {
40
39
  // Required. HTTP verb.
41
40
  Verb verb = 1;
42
41
 
43
- // querystring includes HTTP querystring.
44
- map<string, string> querystring = 2;
42
+ // Optional. querystring represents an encoded HTTP url query string in the following format: name=value&name2=value2
43
+ string querystring = 2;
45
44
  }
46
45
 
47
46
  // InvokeRequest is the message to invoke a method with the data.
@@ -90,16 +89,22 @@ message StateItem {
90
89
 
91
90
  // The entity tag which represents the specific version of data.
92
91
  // The exact ETag format is defined by the corresponding data store.
93
- string etag = 3;
92
+ Etag etag = 3;
94
93
 
95
94
  // The metadata which will be passed to state store component.
96
95
  map<string,string> metadata = 4;
97
96
 
98
- // Options for concurrency, consistency, and retry_policy to save the state.
97
+ // Options for concurrency and consistency to save the state.
99
98
  StateOptions options = 5;
100
99
  }
101
100
 
102
- // StateOptions configures concurrency, consistency, and retry policy for state operations
101
+ // Etag represents a state item version
102
+ message Etag {
103
+ // value sets the etag value
104
+ string value = 1;
105
+ }
106
+
107
+ // StateOptions configures concurrency and consistency for state operations
103
108
  message StateOptions {
104
109
  // Enum describing the supported concurrency for state.
105
110
  enum StateConcurrency {
@@ -117,24 +122,4 @@ message StateOptions {
117
122
 
118
123
  StateConcurrency concurrency = 1;
119
124
  StateConsistency consistency = 2;
120
- StateRetryPolicy retry_policy = 3;
121
- }
122
-
123
- // StateRetryPolicy represents retry policy to set and delete state operations.
124
- message StateRetryPolicy {
125
- // Enum describing the support retry pattern
126
- enum RetryPattern {
127
- RETRY_UNSPECIFIED = 0;
128
- RETRY_LINEAR = 1;
129
- RETRY_EXPONENTIAL = 2;
130
- }
131
-
132
- // Maximum number of retries.
133
- int32 threshold = 1;
134
-
135
- // Retry pattern.
136
- RetryPattern pattern = 2;
137
-
138
- // Initial delay between retries.
139
- google.protobuf.Duration interval = 3;
140
- }
125
+ }
@@ -1,5 +1,5 @@
1
1
  // ------------------------------------------------------------
2
- // Copyright (c) Microsoft Corporation.
2
+ // Copyright (c) Microsoft Corporation and Dapr Contributors.
3
3
  // Licensed under the MIT License.
4
4
  // ------------------------------------------------------------
5
5
 
@@ -26,7 +26,7 @@ service AppCallback {
26
26
  rpc ListTopicSubscriptions(google.protobuf.Empty) returns (ListTopicSubscriptionsResponse) {}
27
27
 
28
28
  // Subscribes events from Pubsub
29
- rpc OnTopicEvent(TopicEventRequest) returns (google.protobuf.Empty) {}
29
+ rpc OnTopicEvent(TopicEventRequest) returns (TopicEventResponse) {}
30
30
 
31
31
  // Lists all input bindings subscribed by this app.
32
32
  rpc ListInputBindings(google.protobuf.Empty) returns (ListInputBindingsResponse) {}
@@ -38,7 +38,7 @@ service AppCallback {
38
38
  rpc OnBindingEvent(BindingEventRequest) returns (BindingEventResponse) {}
39
39
  }
40
40
 
41
- // TopicEventRequest message is compatiable with CloudEvent spec v1.0
41
+ // TopicEventRequest message is compatible with CloudEvent spec v1.0
42
42
  // https://github.com/cloudevents/spec/blob/v1.0/spec.md
43
43
  message TopicEventRequest {
44
44
  // id identifies the event. Producers MUST ensure that source + id
@@ -67,11 +67,30 @@ message TopicEventRequest {
67
67
 
68
68
  // The pubsub topic which publisher sent to.
69
69
  string topic = 6;
70
+
71
+ // The name of the pubsub the publisher sent to.
72
+ string pubsub_name = 8;
73
+ }
74
+
75
+ // TopicEventResponse is response from app on published message
76
+ message TopicEventResponse {
77
+ // TopicEventResponseStatus allows apps to have finer control over handling of the message.
78
+ enum TopicEventResponseStatus {
79
+ // SUCCESS is the default behavior: message is acknowledged and not retried or logged.
80
+ SUCCESS = 0;
81
+ // RETRY status signals Dapr to retry the message as part of an expected scenario (no warning is logged).
82
+ RETRY = 1;
83
+ // DROP status signals Dapr to drop the message as part of an unexpected scenario (warning is logged).
84
+ DROP = 2;
85
+ }
86
+
87
+ // The list of output bindings.
88
+ TopicEventResponseStatus status = 1;
70
89
  }
71
90
 
72
91
  // BindingEventRequest represents input bindings event.
73
92
  message BindingEventRequest {
74
- // Requried. The name of the input binding component.
93
+ // Required. The name of the input binding component.
75
94
  string name = 1;
76
95
 
77
96
  // Required. The payload that the input bindings sent
@@ -117,11 +136,14 @@ message ListTopicSubscriptionsResponse {
117
136
 
118
137
  // TopicSubscription represents topic and metadata.
119
138
  message TopicSubscription {
139
+ // Required. The name of the pubsub containing the topic below to subscribe to.
140
+ string pubsub_name = 1;
141
+
120
142
  // Required. The name of topic which will be subscribed
121
- string topic = 1;
143
+ string topic = 2;
122
144
 
123
- // The optional properties used for this topic's subscribtion e.g. session id
124
- map<string,string> metadata = 2;
145
+ // The optional properties used for this topic's subscription e.g. session id
146
+ map<string,string> metadata = 3;
125
147
  }
126
148
 
127
149
  // ListInputBindingsResponse is the message including the list of input bindings.
@@ -1,5 +1,5 @@
1
1
  // ------------------------------------------------------------
2
- // Copyright (c) Microsoft Corporation.
2
+ // Copyright (c) Microsoft Corporation and Dapr Contributors.
3
3
  // Licensed under the MIT License.
4
4
  // ------------------------------------------------------------
5
5
 
@@ -7,6 +7,7 @@ syntax = "proto3";
7
7
 
8
8
  package dapr.proto.runtime.v1;
9
9
 
10
+ import "google/protobuf/any.proto";
10
11
  import "google/protobuf/empty.proto";
11
12
  import "dapr/proto/common/v1/common.proto";
12
13
 
@@ -23,12 +24,21 @@ service Dapr {
23
24
  // Gets the state for a specific key.
24
25
  rpc GetState(GetStateRequest) returns (GetStateResponse) {}
25
26
 
27
+ // Gets a bulk of state items for a list of keys
28
+ rpc GetBulkState(GetBulkStateRequest) returns (GetBulkStateResponse) {}
29
+
26
30
  // Saves the state for a specific key.
27
31
  rpc SaveState(SaveStateRequest) returns (google.protobuf.Empty) {}
28
32
 
29
33
  // Deletes the state for a specific key.
30
34
  rpc DeleteState(DeleteStateRequest) returns (google.protobuf.Empty) {}
31
35
 
36
+ // Deletes a bulk of state items for a list of keys
37
+ rpc DeleteBulkState(DeleteBulkStateRequest) returns (google.protobuf.Empty) {}
38
+
39
+ // Executes transactions for a specified store
40
+ rpc ExecuteStateTransaction(ExecuteStateTransactionRequest) returns (google.protobuf.Empty) {}
41
+
32
42
  // Publishes events to the specific topic.
33
43
  rpc PublishEvent(PublishEventRequest) returns (google.protobuf.Empty) {}
34
44
 
@@ -37,6 +47,36 @@ service Dapr {
37
47
 
38
48
  // Gets secrets from secret stores.
39
49
  rpc GetSecret(GetSecretRequest) returns (GetSecretResponse) {}
50
+
51
+ // Gets a bulk of secrets
52
+ rpc GetBulkSecret(GetBulkSecretRequest) returns (GetBulkSecretResponse) {}
53
+
54
+ // Register an actor timer.
55
+ rpc RegisterActorTimer(RegisterActorTimerRequest) returns (google.protobuf.Empty) {}
56
+
57
+ // Unregister an actor timer.
58
+ rpc UnregisterActorTimer(UnregisterActorTimerRequest) returns (google.protobuf.Empty) {}
59
+
60
+ // Register an actor reminder.
61
+ rpc RegisterActorReminder(RegisterActorReminderRequest) returns (google.protobuf.Empty) {}
62
+
63
+ // Unregister an actor reminder.
64
+ rpc UnregisterActorReminder(UnregisterActorReminderRequest) returns (google.protobuf.Empty) {}
65
+
66
+ // Gets the state for a specific actor.
67
+ rpc GetActorState(GetActorStateRequest) returns (GetActorStateResponse) {}
68
+
69
+ // Executes state transactions for a specified actor
70
+ rpc ExecuteActorStateTransaction(ExecuteActorStateTransactionRequest) returns (google.protobuf.Empty) {}
71
+
72
+ // InvokeActor calls a method on an actor.
73
+ rpc InvokeActor (InvokeActorRequest) returns (InvokeActorResponse) {}
74
+
75
+ // Gets metadata of the sidecar
76
+ rpc GetMetadata (google.protobuf.Empty) returns (GetMetadataResponse) {}
77
+
78
+ // Sets value in extended metadata of the sidecar
79
+ rpc SetMetadata (SetMetadataRequest) returns (google.protobuf.Empty) {}
40
80
  }
41
81
 
42
82
  // InvokeServiceRequest represents the request message for Service invocation.
@@ -58,6 +98,50 @@ message GetStateRequest {
58
98
 
59
99
  // The read consistency of the state store.
60
100
  common.v1.StateOptions.StateConsistency consistency = 3;
101
+
102
+ // The metadata which will be sent to state store components.
103
+ map<string,string> metadata = 4;
104
+ }
105
+
106
+ // GetBulkStateRequest is the message to get a list of key-value states from specific state store.
107
+ message GetBulkStateRequest {
108
+ // The name of state store.
109
+ string store_name = 1;
110
+
111
+ // The keys to get.
112
+ repeated string keys = 2;
113
+
114
+ // The number of parallel operations executed on the state store for a get operation.
115
+ int32 parallelism = 3;
116
+
117
+ // The metadata which will be sent to state store components.
118
+ map<string,string> metadata = 4;
119
+ }
120
+
121
+ // GetBulkStateResponse is the response conveying the list of state values.
122
+ message GetBulkStateResponse {
123
+ // The list of items containing the keys to get values for.
124
+ repeated BulkStateItem items = 1;
125
+ }
126
+
127
+ // BulkStateItem is the response item for a bulk get operation.
128
+ // Return values include the item key, data and etag.
129
+ message BulkStateItem {
130
+ // state item key
131
+ string key = 1;
132
+
133
+ // The byte array data
134
+ bytes data = 2;
135
+
136
+ // The entity tag which represents the specific version of data.
137
+ // ETag format is defined by the corresponding data store.
138
+ string etag = 3;
139
+
140
+ // The error that was returned from the state store in case of a failed get operation.
141
+ string error = 4;
142
+
143
+ // The metadata which will be sent to app.
144
+ map<string,string> metadata = 5;
61
145
  }
62
146
 
63
147
  // GetStateResponse is the response conveying the state value and etag.
@@ -68,6 +152,9 @@ message GetStateResponse {
68
152
  // The entity tag which represents the specific version of data.
69
153
  // ETag format is defined by the corresponding data store.
70
154
  string etag = 2;
155
+
156
+ // The metadata which will be sent to app.
157
+ map<string,string> metadata = 3;
71
158
  }
72
159
 
73
160
  // DeleteStateRequest is the message to delete key-value states in the specific state store.
@@ -80,11 +167,23 @@ message DeleteStateRequest {
80
167
 
81
168
  // The entity tag which represents the specific version of data.
82
169
  // The exact ETag format is defined by the corresponding data store.
83
- string etag = 3;
170
+ common.v1.Etag etag = 3;
84
171
 
85
172
  // State operation options which includes concurrency/
86
173
  // consistency/retry_policy.
87
174
  common.v1.StateOptions options = 4;
175
+
176
+ // The metadata which will be sent to state store components.
177
+ map<string,string> metadata = 5;
178
+ }
179
+
180
+ // DeleteBulkStateRequest is the message to delete a list of key-value states from specific state store.
181
+ message DeleteBulkStateRequest {
182
+ // The name of state store.
183
+ string store_name = 1;
184
+
185
+ // The array of the state key values.
186
+ repeated common.v1.StateItem states = 2;
88
187
  }
89
188
 
90
189
  // SaveStateRequest is the message to save multiple states into state store.
@@ -98,11 +197,23 @@ message SaveStateRequest {
98
197
 
99
198
  // PublishEventRequest is the message to publish event data to pubsub topic
100
199
  message PublishEventRequest {
200
+ // The name of the pubsub component
201
+ string pubsub_name = 1;
202
+
101
203
  // The pubsub topic
102
- string topic = 1;
204
+ string topic = 2;
103
205
 
104
206
  // The data which will be published to topic.
105
- bytes data = 2;
207
+ bytes data = 3;
208
+
209
+ // The content type for the data (optional).
210
+ string data_content_type = 4;
211
+
212
+ // The metadata passing to pub components
213
+ //
214
+ // metadata property:
215
+ // - key : the key of the message.
216
+ map<string,string> metadata = 5;
106
217
  }
107
218
 
108
219
  // InvokeBindingRequest is the message to send data to output bindings
@@ -147,9 +258,149 @@ message GetSecretRequest {
147
258
  map<string,string> metadata = 3;
148
259
  }
149
260
 
150
- // GetSecretResponse is the response mesage to convey the requested secret.
261
+ // GetSecretResponse is the response message to convey the requested secret.
151
262
  message GetSecretResponse {
152
263
  // data is the secret value. Some secret store, such as kubernetes secret
153
264
  // store, can save multiple secrets for single secret key.
154
265
  map<string, string> data = 1;
155
266
  }
267
+
268
+ // GetBulkSecretRequest is the message to get the secrets from secret store.
269
+ message GetBulkSecretRequest {
270
+ // The name of secret store.
271
+ string store_name = 1;
272
+
273
+ // The metadata which will be sent to secret store components.
274
+ map<string,string> metadata = 2;
275
+ }
276
+
277
+ // SecretResponse is a map of decrypted string/string values
278
+ message SecretResponse {
279
+ map<string, string> secrets = 1;
280
+ }
281
+
282
+ // GetBulkSecretResponse is the response message to convey the requested secrets.
283
+ message GetBulkSecretResponse {
284
+ // data hold the secret values. Some secret store, such as kubernetes secret
285
+ // store, can save multiple secrets for single secret key.
286
+ map<string, SecretResponse> data = 1;
287
+ }
288
+
289
+ // TransactionalStateOperation is the message to execute a specified operation with a key-value pair.
290
+ message TransactionalStateOperation {
291
+ // The type of operation to be executed
292
+ string operationType = 1;
293
+
294
+ // State values to be operated on
295
+ common.v1.StateItem request = 2;
296
+ }
297
+
298
+ // ExecuteStateTransactionRequest is the message to execute multiple operations on a specified store.
299
+ message ExecuteStateTransactionRequest {
300
+ // Required. name of state store.
301
+ string storeName = 1;
302
+
303
+ // Required. transactional operation list.
304
+ repeated TransactionalStateOperation operations = 2;
305
+
306
+ // The metadata used for transactional operations.
307
+ map<string,string> metadata = 3;
308
+ }
309
+
310
+ // RegisterActorTimerRequest is the message to register a timer for an actor of a given type and id.
311
+ message RegisterActorTimerRequest {
312
+ string actor_type = 1;
313
+ string actor_id = 2;
314
+ string name = 3;
315
+ string due_time = 4;
316
+ string period = 5;
317
+ string callback = 6;
318
+ bytes data = 7;
319
+ }
320
+
321
+ // UnregisterActorTimerRequest is the message to unregister an actor timer
322
+ message UnregisterActorTimerRequest {
323
+ string actor_type = 1;
324
+ string actor_id = 2;
325
+ string name = 3;
326
+ }
327
+
328
+ // RegisterActorReminderRequest is the message to register a reminder for an actor of a given type and id.
329
+ message RegisterActorReminderRequest {
330
+ string actor_type = 1;
331
+ string actor_id = 2;
332
+ string name = 3;
333
+ string due_time = 4;
334
+ string period = 5;
335
+ bytes data = 6;
336
+ }
337
+
338
+ // UnregisterActorReminderRequest is the message to unregister an actor reminder.
339
+ message UnregisterActorReminderRequest {
340
+ string actor_type = 1;
341
+ string actor_id = 2;
342
+ string name = 3;
343
+ }
344
+
345
+ // GetActorStateRequest is the message to get key-value states from specific actor.
346
+ message GetActorStateRequest {
347
+ string actor_type = 1;
348
+ string actor_id = 2;
349
+ string key = 3;
350
+ }
351
+
352
+ // GetActorStateResponse is the response conveying the actor's state value.
353
+ message GetActorStateResponse {
354
+ bytes data = 1;
355
+ }
356
+
357
+ // ExecuteActorStateTransactionRequest is the message to execute multiple operations on a specified actor.
358
+ message ExecuteActorStateTransactionRequest {
359
+ string actor_type = 1;
360
+ string actor_id = 2;
361
+ repeated TransactionalActorStateOperation operations = 3;
362
+ }
363
+
364
+ // TransactionalAcorStateOperation is the message to execute a specified operation with a key-value pair.
365
+ message TransactionalActorStateOperation {
366
+ string operationType = 1;
367
+ string key = 2;
368
+ google.protobuf.Any value = 3;
369
+ }
370
+
371
+ // InvokeActorRequest is the message to call an actor.
372
+ message InvokeActorRequest {
373
+ string actor_type = 1;
374
+ string actor_id = 2;
375
+ string method = 3;
376
+ bytes data = 4;
377
+ }
378
+
379
+ // InvokeActorResponse is the method that returns an actor invocation response.
380
+ message InvokeActorResponse {
381
+ bytes data = 1;
382
+ }
383
+
384
+ // GetMetadataResponse is a message that is returned on GetMetadata rpc call
385
+ message GetMetadataResponse {
386
+ string id = 1;
387
+ repeated ActiveActorsCount active_actors_count = 2;
388
+ repeated RegisteredComponents registered_components = 3;
389
+ map<string,string> extended_metadata = 4;
390
+ }
391
+
392
+ message ActiveActorsCount {
393
+ string type = 1;
394
+ int32 count = 2;
395
+ }
396
+
397
+ message RegisteredComponents {
398
+ string name = 1;
399
+ string type = 2;
400
+ string version = 3;
401
+ }
402
+
403
+ message SetMetadataRequest {
404
+ string key = 1;
405
+ string value = 2;
406
+ }
data/example.rb CHANGED
@@ -1,25 +1,25 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "dapr_services_pb"
3
+ require "dapr/proto/runtime/v1/dapr_services_pb"
4
4
 
5
5
  port = ENV.fetch('DAPR_GRPC_PORT', '5001')
6
6
  dapr_uri = "localhost:#{port}"
7
7
 
8
- client = Dapr::Dapr::Stub.new(dapr_uri, :this_channel_is_insecure)
9
- data = Google::Protobuf::Any.new(value: 'lala')
10
- client.publish_event(Dapr::PublishEventEnvelope.new(topic: 'sith', data: data))
8
+ client = Dapr::Proto::Runtime::V1::Dapr::Stub.new(dapr_uri, :this_channel_is_insecure)
9
+ data = 'lala'
10
+ client.publish_event(Dapr::Proto::Runtime::V1::PublishEventRequest.new(pubsub_name: 'pubsub', topic: 'sith', data: 'lala'))
11
11
  puts('Published')
12
12
 
13
13
  key = 'mykey'
14
14
  store_name = 'statestore'
15
- req = Dapr::StateRequest.new(key: key, value: Google::Protobuf::Any.new(value: 'my state'))
16
- state = Dapr::SaveStateEnvelope.new(storeName: store_name, requests: [req])
17
- client.save_state(state)
15
+ state = Dapr::Proto::Common::V1::StateItem.new(key: key, value: 'my state')
16
+ req = Dapr::Proto::Runtime::V1::SaveStateRequest.new(store_name: store_name, states: [state])
17
+ client.save_state(req)
18
18
  puts('Saved!')
19
19
 
20
- resp = client.get_state(Dapr::GetStateEnvelope.new(storeName: store_name, key: key))
20
+ resp = client.get_state(Dapr::Proto::Runtime::V1::GetStateRequest.new(store_name: store_name, key: key))
21
21
  puts('Got state!')
22
22
  puts(resp)
23
23
 
24
- client.delete_state(Dapr::DeleteStateEnvelope.new(storeName: store_name, key: key))
24
+ client.delete_state(Dapr::Proto::Runtime::V1::DeleteStateRequest.new(store_name: store_name, key: key))
25
25
  puts('Deleted!')
@@ -3,18 +3,23 @@
3
3
  Run the example service:
4
4
 
5
5
  ```bash
6
- dapr run --app-id app-callback --protocol grpc --app-port 50051 \
7
- bundle exec ruby app_callback_example.rb
6
+ dapr run --app-id app-callback --app-protocol grpc --app-port 50051 \
7
+ -- bundle exec ruby app_callback_example.rb
8
8
  ```
9
9
 
10
10
  Make a request to invoke a method:
11
11
 
12
12
  ```bash
13
- dapr invoke -a app-callback -m foobar -p '{"foo": "bar"}'
13
+ dapr invoke --app-id app-callback --method foobar --data '{"foo": "bar"}'
14
14
  ```
15
15
 
16
16
  Publish a message to a topic:
17
17
 
18
18
  ```bash
19
- dapr publish -t "example" -d "5"
19
+ dapr publish -i app-callback --pubsub pubsub --topic "example" --data "5"
20
+ ```
21
+
22
+ Invoke the binding:
23
+ ```ruby
24
+ dapr run --app-id invoke-binding -- bundle exec ruby invoke-binding.rb
20
25
  ```
@@ -8,10 +8,10 @@ class AppCallbackService < Dapr::Proto::Runtime::V1::AppCallback::Service
8
8
  Protocol = Dapr::Proto::Runtime::V1
9
9
 
10
10
  def on_invoke(invoke, _call)
11
- puts "invoked!"
12
11
  # Be careful! method() is a builtin method in Ruby
13
12
  method = invoke['method']
14
13
  raw_data = invoke.data
14
+ puts "invoked method '#{method}' with data '#{raw_data}'!"
15
15
  data = JSON.parse(raw_data.value) if raw_data&.value
16
16
  result = { method: method, data: data }
17
17
  Dapr::Proto::Common::V1::InvokeResponse.new(data: Any.new(value: result.to_json))
@@ -21,20 +21,22 @@ class AppCallbackService < Dapr::Proto::Runtime::V1::AppCallback::Service
21
21
 
22
22
  def list_topic_subscriptions(_empty, _call)
23
23
  puts "topics requested!"
24
+ pubsub_name = "pubsub"
24
25
  Protocol::ListTopicSubscriptionsResponse.
25
- new(subscriptions: Array(Protocol::TopicSubscription.new(topic: "example")))
26
+ new(subscriptions: Array(Protocol::TopicSubscription.new(pubsub_name: pubsub_name, topic: "example")))
26
27
  end
27
28
 
28
29
  def list_input_bindings(_empty, _call)
29
30
  puts "bindings requested!"
30
- Protocol::ListInputBindingsResponse.new(bindings: %w(readers_digest))
31
+ bindings = %w(binding)
32
+ Protocol::ListInputBindingsResponse.new(bindings: bindings)
31
33
  end
32
34
 
33
35
  def on_binding_event(binding_event, _call)
34
36
  puts "binding event!"
35
37
  name = binding_event.name
36
38
  raw_data = binding_event.data
37
- metadata = binding_event.metadata
39
+ _metadata = binding_event.metadata
38
40
  puts "Binding Event: name:#{name}, data: #{raw_data}"
39
41
  Protocol::BindingEventResponse.new # data: Any.new(value:)
40
42
  end
@@ -10,8 +10,8 @@ To run this example, use the following code:
10
10
 
11
11
  ```
12
12
  # 1. Start Receiver (expose gRPC receiver server on port 50051)
13
- dapr run --app-id invoke-receiver --protocol grpc --app-port 50051 bundle exec ruby invoke-receiver.rb
13
+ dapr run --app-id invoke-receiver --app-protocol grpc --app-port 50051 -- bundle exec ruby invoke-receiver.rb
14
14
 
15
15
  # 2. Start Caller
16
- dapr run --app-id invoke-caller --protocol grpc bundle exec ruby invoke-caller.rb
16
+ dapr run --app-id invoke-caller -- bundle exec ruby invoke-caller.rb
17
17
  ```
@@ -9,6 +9,7 @@ class InvokeReceiverService < Dapr::Proto::Runtime::V1::AppCallback::Service
9
9
 
10
10
  def on_invoke(invoke, _call)
11
11
  content_type = "text/plain; charset=UTF-8"
12
+ puts "Invoked method '#{invoke["method"]}' with value '#{invoke["data"]["value"]}'"
12
13
  data = if invoke["method"] == "my-method"
13
14
  Any.new(value: "INVOKE_RECEIVED")
14
15
  else
@@ -6,8 +6,8 @@ To run this example, use the following commands:
6
6
 
7
7
  ```bash
8
8
  # 1. Start Subscriber (expose gRPC receiver server on port 50051)
9
- dapr run --app-id subscriber --protocol grpc --app-port 50051 bundle exec ruby subscriber.rb
9
+ dapr run --app-id subscriber --app-protocol grpc --app-port 50051 -- bundle exec ruby subscriber.rb
10
10
 
11
11
  # 2. Start Publisher
12
- dapr run --app-id publisher --protocol grpc bundle exec ruby publisher.rb
12
+ dapr run --app-id publisher -- bundle exec ruby publisher.rb
13
13
  ```
@@ -9,7 +9,11 @@ RuntimeV1 = Dapr::Proto::Runtime::V1
9
9
  port = ENV["DAPR_GRPC_PORT"]
10
10
  client = Dapr::Proto::Runtime::V1::Dapr::Stub.new("localhost:#{port}", :this_channel_is_insecure)
11
11
 
12
+ # This matches the name of the pubsub component used
13
+ pubsub_name = "pubsub"
14
+
15
+ data = "ACTION=1"
12
16
  client.publish_event(RuntimeV1::PublishEventRequest.
13
- new(topic: "TOPIC_A", data: "ACTION=1"))
17
+ new(pubsub_name: pubsub_name, topic: "TOPIC_A", data: data))
14
18
 
15
- puts "Published!"
19
+ puts "Published #{data}"
@@ -7,16 +7,20 @@ $stdout.sync = true
7
7
  class Subscriber < Dapr::Proto::Runtime::V1::AppCallback::Service
8
8
  RuntimeV1 = Dapr::Proto::Runtime::V1
9
9
 
10
+
10
11
  # Dapr will call this method to get the list of topics the app
11
12
  # wants to subscribe to. In this example, we are telling Dapr
12
13
  # To subscribe to a topic named TOPIC_A
13
14
  def list_topic_subscriptions(_empty, _call)
15
+ # Name of the configured pubsub component
16
+ pubsub_name = "pubsub"
17
+
14
18
  RuntimeV1::ListTopicSubscriptionsResponse.new(
15
- subscriptions: Array(RuntimeV1::TopicSubscription.new(topic: "TOPIC_A")))
19
+ subscriptions: Array(RuntimeV1::TopicSubscription.new(pubsub_name: pubsub_name, topic: "TOPIC_A")))
16
20
  end
17
21
 
18
- def on_topic_event(_topic_event, _call)
19
- puts "Event received!"
22
+ def on_topic_event(topic_event, _call)
23
+ puts "Event received #{topic_event}!"
20
24
  Google::Protobuf::Empty.new
21
25
  end
22
26
  end
@@ -3,5 +3,5 @@
3
3
  This example demonstrates saving, fetching, and deleting state from the store.
4
4
 
5
5
  ```bash
6
- dapr run --app-id state-store --protocol grpc bundle exec ruby state-store.rb
6
+ dapr run --app-id state-store --app-protocol grpc -- bundle exec ruby state-store.rb
7
7
  ```
@@ -4,12 +4,11 @@
4
4
  require 'google/protobuf'
5
5
 
6
6
  require 'google/protobuf/any_pb'
7
- require 'google/protobuf/duration_pb'
8
7
  Google::Protobuf::DescriptorPool.generated_pool.build do
9
8
  add_file("dapr/proto/common/v1/common.proto", :syntax => :proto3) do
10
9
  add_message "dapr.proto.common.v1.HTTPExtension" do
11
10
  optional :verb, :enum, 1, "dapr.proto.common.v1.HTTPExtension.Verb"
12
- map :querystring, :string, :string, 2
11
+ optional :querystring, :string, 2
13
12
  end
14
13
  add_enum "dapr.proto.common.v1.HTTPExtension.Verb" do
15
14
  value :NONE, 0
@@ -35,14 +34,16 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
35
34
  add_message "dapr.proto.common.v1.StateItem" do
36
35
  optional :key, :string, 1
37
36
  optional :value, :bytes, 2
38
- optional :etag, :string, 3
37
+ optional :etag, :message, 3, "dapr.proto.common.v1.Etag"
39
38
  map :metadata, :string, :string, 4
40
39
  optional :options, :message, 5, "dapr.proto.common.v1.StateOptions"
41
40
  end
41
+ add_message "dapr.proto.common.v1.Etag" do
42
+ optional :value, :string, 1
43
+ end
42
44
  add_message "dapr.proto.common.v1.StateOptions" do
43
45
  optional :concurrency, :enum, 1, "dapr.proto.common.v1.StateOptions.StateConcurrency"
44
46
  optional :consistency, :enum, 2, "dapr.proto.common.v1.StateOptions.StateConsistency"
45
- optional :retry_policy, :message, 3, "dapr.proto.common.v1.StateRetryPolicy"
46
47
  end
47
48
  add_enum "dapr.proto.common.v1.StateOptions.StateConcurrency" do
48
49
  value :CONCURRENCY_UNSPECIFIED, 0
@@ -54,16 +55,6 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
54
55
  value :CONSISTENCY_EVENTUAL, 1
55
56
  value :CONSISTENCY_STRONG, 2
56
57
  end
57
- add_message "dapr.proto.common.v1.StateRetryPolicy" do
58
- optional :threshold, :int32, 1
59
- optional :pattern, :enum, 2, "dapr.proto.common.v1.StateRetryPolicy.RetryPattern"
60
- optional :interval, :message, 3, "google.protobuf.Duration"
61
- end
62
- add_enum "dapr.proto.common.v1.StateRetryPolicy.RetryPattern" do
63
- value :RETRY_UNSPECIFIED, 0
64
- value :RETRY_LINEAR, 1
65
- value :RETRY_EXPONENTIAL, 2
66
- end
67
58
  end
68
59
  end
69
60
 
@@ -76,11 +67,10 @@ module Dapr
76
67
  InvokeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.InvokeRequest").msgclass
77
68
  InvokeResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.InvokeResponse").msgclass
78
69
  StateItem = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.StateItem").msgclass
70
+ Etag = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.Etag").msgclass
79
71
  StateOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.StateOptions").msgclass
80
72
  StateOptions::StateConcurrency = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.StateOptions.StateConcurrency").enummodule
81
73
  StateOptions::StateConsistency = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.StateOptions.StateConsistency").enummodule
82
- StateRetryPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.StateRetryPolicy").msgclass
83
- StateRetryPolicy::RetryPattern = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.common.v1.StateRetryPolicy.RetryPattern").enummodule
84
74
  end
85
75
  end
86
76
  end
@@ -15,6 +15,15 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
15
15
  optional :data_content_type, :string, 5
16
16
  optional :data, :bytes, 7
17
17
  optional :topic, :string, 6
18
+ optional :pubsub_name, :string, 8
19
+ end
20
+ add_message "dapr.proto.runtime.v1.TopicEventResponse" do
21
+ optional :status, :enum, 1, "dapr.proto.runtime.v1.TopicEventResponse.TopicEventResponseStatus"
22
+ end
23
+ add_enum "dapr.proto.runtime.v1.TopicEventResponse.TopicEventResponseStatus" do
24
+ value :SUCCESS, 0
25
+ value :RETRY, 1
26
+ value :DROP, 2
18
27
  end
19
28
  add_message "dapr.proto.runtime.v1.BindingEventRequest" do
20
29
  optional :name, :string, 1
@@ -36,8 +45,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
36
45
  repeated :subscriptions, :message, 1, "dapr.proto.runtime.v1.TopicSubscription"
37
46
  end
38
47
  add_message "dapr.proto.runtime.v1.TopicSubscription" do
39
- optional :topic, :string, 1
40
- map :metadata, :string, :string, 2
48
+ optional :pubsub_name, :string, 1
49
+ optional :topic, :string, 2
50
+ map :metadata, :string, :string, 3
41
51
  end
42
52
  add_message "dapr.proto.runtime.v1.ListInputBindingsResponse" do
43
53
  repeated :bindings, :string, 1
@@ -50,6 +60,8 @@ module Dapr
50
60
  module Runtime
51
61
  module V1
52
62
  TopicEventRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.TopicEventRequest").msgclass
63
+ TopicEventResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.TopicEventResponse").msgclass
64
+ TopicEventResponse::TopicEventResponseStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.TopicEventResponse.TopicEventResponseStatus").enummodule
53
65
  BindingEventRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.BindingEventRequest").msgclass
54
66
  BindingEventResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.BindingEventResponse").msgclass
55
67
  BindingEventResponse::BindingEventConcurrency = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.BindingEventResponse.BindingEventConcurrency").enummodule
@@ -2,7 +2,7 @@
2
2
  # Source: dapr/proto/runtime/v1/appcallback.proto for package 'dapr.proto.runtime.v1'
3
3
  # Original file comments:
4
4
  # ------------------------------------------------------------
5
- # Copyright (c) Microsoft Corporation.
5
+ # Copyright (c) Microsoft Corporation and Dapr Contributors.
6
6
  # Licensed under the MIT License.
7
7
  # ------------------------------------------------------------
8
8
  #
@@ -31,7 +31,7 @@ module Dapr
31
31
  # Lists all topics subscribed by this app.
32
32
  rpc :ListTopicSubscriptions, Google::Protobuf::Empty, ListTopicSubscriptionsResponse
33
33
  # Subscribes events from Pubsub
34
- rpc :OnTopicEvent, TopicEventRequest, Google::Protobuf::Empty
34
+ rpc :OnTopicEvent, TopicEventRequest, TopicEventResponse
35
35
  # Lists all input bindings subscribed by this app.
36
36
  rpc :ListInputBindings, Google::Protobuf::Empty, ListInputBindingsResponse
37
37
  # Listens events from the input bindings
@@ -3,6 +3,7 @@
3
3
 
4
4
  require 'google/protobuf'
5
5
 
6
+ require 'google/protobuf/any_pb'
6
7
  require 'google/protobuf/empty_pb'
7
8
  require 'dapr/proto/common/v1/common_pb'
8
9
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -15,24 +16,50 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
15
16
  optional :store_name, :string, 1
16
17
  optional :key, :string, 2
17
18
  optional :consistency, :enum, 3, "dapr.proto.common.v1.StateOptions.StateConsistency"
19
+ map :metadata, :string, :string, 4
20
+ end
21
+ add_message "dapr.proto.runtime.v1.GetBulkStateRequest" do
22
+ optional :store_name, :string, 1
23
+ repeated :keys, :string, 2
24
+ optional :parallelism, :int32, 3
25
+ map :metadata, :string, :string, 4
26
+ end
27
+ add_message "dapr.proto.runtime.v1.GetBulkStateResponse" do
28
+ repeated :items, :message, 1, "dapr.proto.runtime.v1.BulkStateItem"
29
+ end
30
+ add_message "dapr.proto.runtime.v1.BulkStateItem" do
31
+ optional :key, :string, 1
32
+ optional :data, :bytes, 2
33
+ optional :etag, :string, 3
34
+ optional :error, :string, 4
35
+ map :metadata, :string, :string, 5
18
36
  end
19
37
  add_message "dapr.proto.runtime.v1.GetStateResponse" do
20
38
  optional :data, :bytes, 1
21
39
  optional :etag, :string, 2
40
+ map :metadata, :string, :string, 3
22
41
  end
23
42
  add_message "dapr.proto.runtime.v1.DeleteStateRequest" do
24
43
  optional :store_name, :string, 1
25
44
  optional :key, :string, 2
26
- optional :etag, :string, 3
45
+ optional :etag, :message, 3, "dapr.proto.common.v1.Etag"
27
46
  optional :options, :message, 4, "dapr.proto.common.v1.StateOptions"
47
+ map :metadata, :string, :string, 5
48
+ end
49
+ add_message "dapr.proto.runtime.v1.DeleteBulkStateRequest" do
50
+ optional :store_name, :string, 1
51
+ repeated :states, :message, 2, "dapr.proto.common.v1.StateItem"
28
52
  end
29
53
  add_message "dapr.proto.runtime.v1.SaveStateRequest" do
30
54
  optional :store_name, :string, 1
31
55
  repeated :states, :message, 2, "dapr.proto.common.v1.StateItem"
32
56
  end
33
57
  add_message "dapr.proto.runtime.v1.PublishEventRequest" do
34
- optional :topic, :string, 1
35
- optional :data, :bytes, 2
58
+ optional :pubsub_name, :string, 1
59
+ optional :topic, :string, 2
60
+ optional :data, :bytes, 3
61
+ optional :data_content_type, :string, 4
62
+ map :metadata, :string, :string, 5
36
63
  end
37
64
  add_message "dapr.proto.runtime.v1.InvokeBindingRequest" do
38
65
  optional :name, :string, 1
@@ -52,6 +79,98 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
52
79
  add_message "dapr.proto.runtime.v1.GetSecretResponse" do
53
80
  map :data, :string, :string, 1
54
81
  end
82
+ add_message "dapr.proto.runtime.v1.GetBulkSecretRequest" do
83
+ optional :store_name, :string, 1
84
+ map :metadata, :string, :string, 2
85
+ end
86
+ add_message "dapr.proto.runtime.v1.SecretResponse" do
87
+ map :secrets, :string, :string, 1
88
+ end
89
+ add_message "dapr.proto.runtime.v1.GetBulkSecretResponse" do
90
+ map :data, :string, :message, 1, "dapr.proto.runtime.v1.SecretResponse"
91
+ end
92
+ add_message "dapr.proto.runtime.v1.TransactionalStateOperation" do
93
+ optional :operationType, :string, 1
94
+ optional :request, :message, 2, "dapr.proto.common.v1.StateItem"
95
+ end
96
+ add_message "dapr.proto.runtime.v1.ExecuteStateTransactionRequest" do
97
+ optional :storeName, :string, 1
98
+ repeated :operations, :message, 2, "dapr.proto.runtime.v1.TransactionalStateOperation"
99
+ map :metadata, :string, :string, 3
100
+ end
101
+ add_message "dapr.proto.runtime.v1.RegisterActorTimerRequest" do
102
+ optional :actor_type, :string, 1
103
+ optional :actor_id, :string, 2
104
+ optional :name, :string, 3
105
+ optional :due_time, :string, 4
106
+ optional :period, :string, 5
107
+ optional :callback, :string, 6
108
+ optional :data, :bytes, 7
109
+ end
110
+ add_message "dapr.proto.runtime.v1.UnregisterActorTimerRequest" do
111
+ optional :actor_type, :string, 1
112
+ optional :actor_id, :string, 2
113
+ optional :name, :string, 3
114
+ end
115
+ add_message "dapr.proto.runtime.v1.RegisterActorReminderRequest" do
116
+ optional :actor_type, :string, 1
117
+ optional :actor_id, :string, 2
118
+ optional :name, :string, 3
119
+ optional :due_time, :string, 4
120
+ optional :period, :string, 5
121
+ optional :data, :bytes, 6
122
+ end
123
+ add_message "dapr.proto.runtime.v1.UnregisterActorReminderRequest" do
124
+ optional :actor_type, :string, 1
125
+ optional :actor_id, :string, 2
126
+ optional :name, :string, 3
127
+ end
128
+ add_message "dapr.proto.runtime.v1.GetActorStateRequest" do
129
+ optional :actor_type, :string, 1
130
+ optional :actor_id, :string, 2
131
+ optional :key, :string, 3
132
+ end
133
+ add_message "dapr.proto.runtime.v1.GetActorStateResponse" do
134
+ optional :data, :bytes, 1
135
+ end
136
+ add_message "dapr.proto.runtime.v1.ExecuteActorStateTransactionRequest" do
137
+ optional :actor_type, :string, 1
138
+ optional :actor_id, :string, 2
139
+ repeated :operations, :message, 3, "dapr.proto.runtime.v1.TransactionalActorStateOperation"
140
+ end
141
+ add_message "dapr.proto.runtime.v1.TransactionalActorStateOperation" do
142
+ optional :operationType, :string, 1
143
+ optional :key, :string, 2
144
+ optional :value, :message, 3, "google.protobuf.Any"
145
+ end
146
+ add_message "dapr.proto.runtime.v1.InvokeActorRequest" do
147
+ optional :actor_type, :string, 1
148
+ optional :actor_id, :string, 2
149
+ optional :method, :string, 3
150
+ optional :data, :bytes, 4
151
+ end
152
+ add_message "dapr.proto.runtime.v1.InvokeActorResponse" do
153
+ optional :data, :bytes, 1
154
+ end
155
+ add_message "dapr.proto.runtime.v1.GetMetadataResponse" do
156
+ optional :id, :string, 1
157
+ repeated :active_actors_count, :message, 2, "dapr.proto.runtime.v1.ActiveActorsCount"
158
+ repeated :registered_components, :message, 3, "dapr.proto.runtime.v1.RegisteredComponents"
159
+ map :extended_metadata, :string, :string, 4
160
+ end
161
+ add_message "dapr.proto.runtime.v1.ActiveActorsCount" do
162
+ optional :type, :string, 1
163
+ optional :count, :int32, 2
164
+ end
165
+ add_message "dapr.proto.runtime.v1.RegisteredComponents" do
166
+ optional :name, :string, 1
167
+ optional :type, :string, 2
168
+ optional :version, :string, 3
169
+ end
170
+ add_message "dapr.proto.runtime.v1.SetMetadataRequest" do
171
+ optional :key, :string, 1
172
+ optional :value, :string, 2
173
+ end
55
174
  end
56
175
  end
57
176
 
@@ -61,14 +180,37 @@ module Dapr
61
180
  module V1
62
181
  InvokeServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.InvokeServiceRequest").msgclass
63
182
  GetStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetStateRequest").msgclass
183
+ GetBulkStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetBulkStateRequest").msgclass
184
+ GetBulkStateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetBulkStateResponse").msgclass
185
+ BulkStateItem = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.BulkStateItem").msgclass
64
186
  GetStateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetStateResponse").msgclass
65
187
  DeleteStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.DeleteStateRequest").msgclass
188
+ DeleteBulkStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.DeleteBulkStateRequest").msgclass
66
189
  SaveStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.SaveStateRequest").msgclass
67
190
  PublishEventRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.PublishEventRequest").msgclass
68
191
  InvokeBindingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.InvokeBindingRequest").msgclass
69
192
  InvokeBindingResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.InvokeBindingResponse").msgclass
70
193
  GetSecretRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetSecretRequest").msgclass
71
194
  GetSecretResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetSecretResponse").msgclass
195
+ GetBulkSecretRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetBulkSecretRequest").msgclass
196
+ SecretResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.SecretResponse").msgclass
197
+ GetBulkSecretResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetBulkSecretResponse").msgclass
198
+ TransactionalStateOperation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.TransactionalStateOperation").msgclass
199
+ ExecuteStateTransactionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.ExecuteStateTransactionRequest").msgclass
200
+ RegisterActorTimerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.RegisterActorTimerRequest").msgclass
201
+ UnregisterActorTimerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.UnregisterActorTimerRequest").msgclass
202
+ RegisterActorReminderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.RegisterActorReminderRequest").msgclass
203
+ UnregisterActorReminderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.UnregisterActorReminderRequest").msgclass
204
+ GetActorStateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetActorStateRequest").msgclass
205
+ GetActorStateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetActorStateResponse").msgclass
206
+ ExecuteActorStateTransactionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.ExecuteActorStateTransactionRequest").msgclass
207
+ TransactionalActorStateOperation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.TransactionalActorStateOperation").msgclass
208
+ InvokeActorRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.InvokeActorRequest").msgclass
209
+ InvokeActorResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.InvokeActorResponse").msgclass
210
+ GetMetadataResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.GetMetadataResponse").msgclass
211
+ ActiveActorsCount = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.ActiveActorsCount").msgclass
212
+ RegisteredComponents = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.RegisteredComponents").msgclass
213
+ SetMetadataRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("dapr.proto.runtime.v1.SetMetadataRequest").msgclass
72
214
  end
73
215
  end
74
216
  end
@@ -2,7 +2,7 @@
2
2
  # Source: dapr/proto/runtime/v1/dapr.proto for package 'dapr.proto.runtime.v1'
3
3
  # Original file comments:
4
4
  # ------------------------------------------------------------
5
- # Copyright (c) Microsoft Corporation.
5
+ # Copyright (c) Microsoft Corporation and Dapr Contributors.
6
6
  # Licensed under the MIT License.
7
7
  # ------------------------------------------------------------
8
8
  #
@@ -24,21 +24,46 @@ module Dapr
24
24
  self.unmarshal_class_method = :decode
25
25
  self.service_name = 'dapr.proto.runtime.v1.Dapr'
26
26
 
27
- # Invokes a method on a remote Dapr app.
28
- # Nested Dapr modules are problematic so this must be prefixed as a top-level constant
27
+ # Invokes a method on a remote Dapr app.
29
28
  rpc :InvokeService, InvokeServiceRequest, ::Dapr::Proto::Common::V1::InvokeResponse
30
- # Gets the state for a specific key.
29
+ # Gets the state for a specific key.
31
30
  rpc :GetState, GetStateRequest, GetStateResponse
31
+ # Gets a bulk of state items for a list of keys
32
+ rpc :GetBulkState, GetBulkStateRequest, GetBulkStateResponse
32
33
  # Saves the state for a specific key.
33
34
  rpc :SaveState, SaveStateRequest, Google::Protobuf::Empty
34
35
  # Deletes the state for a specific key.
35
36
  rpc :DeleteState, DeleteStateRequest, Google::Protobuf::Empty
37
+ # Deletes a bulk of state items for a list of keys
38
+ rpc :DeleteBulkState, DeleteBulkStateRequest, Google::Protobuf::Empty
39
+ # Executes transactions for a specified store
40
+ rpc :ExecuteStateTransaction, ExecuteStateTransactionRequest, Google::Protobuf::Empty
36
41
  # Publishes events to the specific topic.
37
42
  rpc :PublishEvent, PublishEventRequest, Google::Protobuf::Empty
38
43
  # Invokes binding data to specific output bindings
39
44
  rpc :InvokeBinding, InvokeBindingRequest, InvokeBindingResponse
40
45
  # Gets secrets from secret stores.
41
46
  rpc :GetSecret, GetSecretRequest, GetSecretResponse
47
+ # Gets a bulk of secrets
48
+ rpc :GetBulkSecret, GetBulkSecretRequest, GetBulkSecretResponse
49
+ # Register an actor timer.
50
+ rpc :RegisterActorTimer, RegisterActorTimerRequest, Google::Protobuf::Empty
51
+ # Unregister an actor timer.
52
+ rpc :UnregisterActorTimer, UnregisterActorTimerRequest, Google::Protobuf::Empty
53
+ # Register an actor reminder.
54
+ rpc :RegisterActorReminder, RegisterActorReminderRequest, Google::Protobuf::Empty
55
+ # Unregister an actor reminder.
56
+ rpc :UnregisterActorReminder, UnregisterActorReminderRequest, Google::Protobuf::Empty
57
+ # Gets the state for a specific actor.
58
+ rpc :GetActorState, GetActorStateRequest, GetActorStateResponse
59
+ # Executes state transactions for a specified actor
60
+ rpc :ExecuteActorStateTransaction, ExecuteActorStateTransactionRequest, Google::Protobuf::Empty
61
+ # InvokeActor calls a method on an actor.
62
+ rpc :InvokeActor, InvokeActorRequest, InvokeActorResponse
63
+ # Gets metadata of the sidecar
64
+ rpc :GetMetadata, Google::Protobuf::Empty, GetMetadataResponse
65
+ # Sets value in extended metadata of the sidecar
66
+ rpc :SetMetadata, SetMetadataRequest, Google::Protobuf::Empty
42
67
  end
43
68
 
44
69
  Stub = Service.rpc_stub_class
data/lib/dapr/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Dapr
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dapr-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - tjwp
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-07-16 00:00:00.000000000 Z
11
+ date: 2021-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-protobuf
@@ -163,7 +163,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
163
163
  - !ruby/object:Gem::Version
164
164
  version: '0'
165
165
  requirements: []
166
- rubygems_version: 3.0.3
166
+ rubygems_version: 3.1.4
167
167
  signing_key:
168
168
  specification_version: 4
169
169
  summary: Dapr SDK for Ruby