Skip to content

Commit

Permalink
Merge branch 'v1.13' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
marcduiker authored May 21, 2024
2 parents 9267328 + c62e2c5 commit 36745a1
Show file tree
Hide file tree
Showing 2 changed files with 146 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -537,7 +537,7 @@ Try getting state again. Note that no value is returned.

Below are code examples that leverage Dapr SDKs for saving and retrieving multiple states.

{{< tabs Dotnet Java Python Javascript "HTTP API (Bash)" "HTTP API (PowerShell)">}}
{{< tabs Dotnet Java Python Go Javascript "HTTP API (Bash)" "HTTP API (PowerShell)">}}

{{% codetab %}}

Expand Down Expand Up @@ -656,6 +656,56 @@ dapr run --app-id orderprocessing --app-port 6001 --dapr-http-port 3601 --dapr-g

{{% codetab %}}

```go
// dependencies
import (
"context"
"log"
"math/rand"
"strconv"
"time"
dapr "github.com/dapr/go-sdk/client"
)
// code
func main() {
const STATE_STORE_NAME = "statestore"
rand.Seed(time.Now().UnixMicro())
for i := 0; i < 10; i++ {
orderId := rand.Intn(1000-1) + 1
client, err := dapr.NewClient()
if err != nil {
panic(err)
}
defer client.Close()
ctx := context.Background()
err = client.SaveState(ctx, STATE_STORE_NAME, "order_1", []byte(strconv.Itoa(orderId)), nil)
if err != nil {
panic(err)
}
keys := []string{"key1", "key2", "key3"}
items, err := client.GetBulkState(ctx, STATE_STORE_NAME, keys, nil, 100)
if err != nil {
panic(err)
}
for _, item := range items {
log.Println("Item from GetBulkState:", string(item.Value))
}
}
}
```

To launch a Dapr sidecar for the above example application, run a command similar to the following:

```bash
dapr run --app-id orderprocessing --app-port 6001 --dapr-http-port 3601 --dapr-grpc-port 60001 go run OrderProcessingService.go
```

{{% /codetab %}}

{{% codetab %}}

```javascript
//dependencies
import { DaprClient, HttpMethod, CommunicationProtocolEnum } from '@dapr/dapr';
Expand Down Expand Up @@ -738,7 +788,7 @@ State transactions require a state store that supports multi-item transactions.

Below are code examples that leverage Dapr SDKs for performing state transactions.

{{< tabs Dotnet Java Python Javascript "HTTP API (Bash)" "HTTP API (PowerShell)">}}
{{< tabs Dotnet Java Python Go Javascript "HTTP API (Bash)" "HTTP API (PowerShell)">}}

{{% codetab %}}

Expand Down Expand Up @@ -893,6 +943,79 @@ dapr run --app-id orderprocessing --app-port 6001 --dapr-http-port 3601 --dapr-g

{{% codetab %}}

```go
// dependencies
package main
import (
"context"
"log"
"math/rand"
"strconv"
"time"
dapr "github.com/dapr/go-sdk/client"
)
// code
func main() {
const STATE_STORE_NAME = "statestore"
rand.Seed(time.Now().UnixMicro())
for i := 0; i < 10; i++ {
orderId := rand.Intn(1000-1) + 1
client, err := dapr.NewClient()
if err != nil {
panic(err)
}
defer client.Close()
ctx := context.Background()
err = client.SaveState(ctx, STATE_STORE_NAME, "order_1", []byte(strconv.Itoa(orderId)), nil)
if err != nil {
panic(err)
}
result, err := client.GetState(ctx, STATE_STORE_NAME, "order_1", nil)
if err != nil {
panic(err)
}
ops := make([]*dapr.StateOperation, 0)
data1 := "data1"
data2 := "data2"
op1 := &dapr.StateOperation{
Type: dapr.StateOperationTypeUpsert,
Item: &dapr.SetStateItem{
Key: "key1",
Value: []byte(data1),
},
}
op2 := &dapr.StateOperation{
Type: dapr.StateOperationTypeDelete,
Item: &dapr.SetStateItem{
Key: "key2",
Value: []byte(data2),
},
}
ops = append(ops, op1, op2)
meta := map[string]string{}
err = client.ExecuteStateTransaction(ctx, STATE_STORE_NAME, meta, ops)
log.Println("Result after get:", string(result.Value))
time.Sleep(2 * time.Second)
}
}
```

To launch a Dapr sidecar for the above example application, run a command similar to the following:

```bash
dapr run --app-id orderprocessing --app-port 6001 --dapr-http-port 3601 --dapr-grpc-port 60001 go run OrderProcessingService.go
```

{{% /codetab %}}

{{% codetab %}}

```javascript
//dependencies
import { DaprClient, HttpMethod, CommunicationProtocolEnum } from '@dapr/dapr';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ dapr run -f <dir_path>
<!--kubernetes-->

```cmd
dapr run -f -k <dir_path>
dapr run -f <dir_path> -k
```
{{% /codetab %}}

Expand All @@ -67,7 +67,7 @@ dapr run -f ./path/to/<your-preferred-file-name>.yaml
<!--kubernetes-->

```cmd
dapr run -f -k ./path/to/<your-preferred-file-name>.yaml
dapr run -f ./path/to/<your-preferred-file-name>.yaml -k
```
{{% /codetab %}}

Expand All @@ -77,10 +77,27 @@ dapr run -f -k ./path/to/<your-preferred-file-name>.yaml

Once the multi-app template is running, you can view the started applications with the following command:

{{< tabs Self-hosted Kubernetes>}}

{{% codetab %}}
<!--selfhosted-->

```cmd
dapr list
```

{{% /codetab %}}

{{% codetab %}}
<!--kubernetes-->

```cmd
dapr list -k
```
{{% /codetab %}}

{{< /tabs >}}

## Stop the multi-app template

Stop the multi-app run template anytime with either of the following commands:
Expand Down Expand Up @@ -109,12 +126,12 @@ dapr stop -f ./path/to/<your-preferred-file-name>.yaml
```cmd
# the template file needs to be called `dapr.yaml` by default if a directory path is given
dapr stop -f -k
dapr stop -f <dir_path> -k
```
or:

```cmd
dapr stop -f -k ./path/to/<your-preferred-file-name>.yaml
dapr stop -f ./path/to/<your-preferred-file-name>.yaml -k
```

{{% /codetab %}}
Expand Down

0 comments on commit 36745a1

Please sign in to comment.