Categorygithub.com/davinash/geode-go
modulepackage
0.1.0
Repository: https://github.com/davinash/geode-go.git
Documentation: pkg.go.dev

# README

Go Actions Status

geode-go

geode-go provides Go package for connecting with Apache Geode.

Inspired by

Install

go get -u github.com/davinash/geode-go

Region APIs Supported

  • Put
  • Get
  • PutAll
  • GetAll
  • PutIfAbsent
  • Remove
  • Size
  • Clear

Function Execution

  • ExecuteFunctionOnRegion
  • ExecuteFunctionOnMember

API Usage

Create a new client

geodeClient, err := client.NewClient(100)

Add a Server to this client

err := geodeClient.AddServer("localhost", port)
if err != nil {
    return err
}

Put Operation

geodeClient.Region(regionName).Put("Key", "Value")

Get Operation

geodeClient.Region(regionName).Get("Key")

Size

geodeClient.Region(regionName).Size()

KeySet

geodeClient.Region(regionName).KeySet()

PutIfAbsent

geodeClient.Region(regionName).PutIfAbsent("Key-1", "Value-New")

PutAll

kvs := make([]*pkg.KeyValue, 0)
for i := 0; i < 10; i++ {
    kvs = append(kvs, &pkg.KeyValue{
        Key:   fmt.Sprintf("Key-PutAll-%d", i),
        Value: fmt.Sprintf("Val-PutAll-%d", i),
    })
}
putAll, err := suite.Client.Region(regionName).PutAll(kvs)
if err != nil {
    log.Println("PutAll failed, Error =  %v", err)
}

GetAll

keys := make([]*pkg.Keys, 0)
for i := 0; i < 10; i++ {
    keys = append(keys, &pkg.Keys{
        Key: fmt.Sprintf("Key-PutAll-%d", i),
    })
}
values, err := suite.Client.Region(regionName).GetAll(keys)
if err != nil {
    log.Println("GetAll failed, Error = %v", err)
}

Remove

geodeClient.Region(regionName).Remove(key)

Clear

geodeClient.Region(regionName).Clear()

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Functions

NewClient Creates a new client, maxConn is maximum number of connection this instance of client will open.

# Structs

No description provided by the author