pantry_client

package module
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

README

Pantry Client in Go

This is a Go client for interacting with the Pantry API.

Installation

go get github.com/Atoo35/pantry_client

Usage

First, import the package in your Go file.

import "github.com/Atoo35/pantry_client"

Then, create a new client.

client :=  pantry_client.NewPantry(pantry_client.WithPantryID("pantry_id"))

Get Pantry

To get a pantry, use the GetPantry method.

item, err := pantryClient.GetPantry()
if err != nil {
    log.Fatal(err)
}
fmt.Println(item)

Update Pantry Details

To update pantry details, use the UpdatePantryDetails method.

update := &types.UpdatePantryDetailsInput{
		Name:        "pantry_name",
		Description: "pantry_description",
	}
updatedItem, err := pantryClient.UpdatePantryDetails(update)
if err != nil {
    log.Fatal(err)
}
fmt.Println(updatedItem)

Upset Basket

To update basket, use the UpdateBasket method.

basketData := map[string]interface{}{
		"item": "item_name",
		"qty":  1,
	}
err := pantryClient.UpsertBasket("basket_name", basketData)
if err != nil {
    log.Fatal(err)
}

Get Basket Contents

To get contents of the basket, use the GetContents method.

data, err := pantryClient.GetContents("basket_name")
if err != nil {
    log.Fatal(err)
}
fmt.Println(data)

Delete Basket

To delete a basket, use the DeleteBasket method.

err := pantryClient.DeleteBasket("basket_name")
if err != nil {
    log.Fatal(err)
}

Update Basket Contents

To update basket contents, use the UpdateBasketContents method.

basketData := map[string]interface{}{
        "item": "item_name",
        "qty":  1,
    }
err := pantryClient.UpdateBasketContents("basket_name", basketData)
if err != nil {
    log.Fatal(err)
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Option

type Option func(*PantryClient)

func WithPantryID

func WithPantryID(id string) Option

type PantryClient

type PantryClient struct {
	BaseURL  string
	PantryID string
	// contains filtered or unexported fields
}

func NewPantry

func NewPantry(opts ...Option) *PantryClient

func (*PantryClient) DeleteBasket

func (p *PantryClient) DeleteBasket(basketName string) error

func (*PantryClient) GetBaseURL

func (p *PantryClient) GetBaseURL() string

func (*PantryClient) GetContents

func (p *PantryClient) GetContents(basketName string) (map[string]interface{}, error)

func (*PantryClient) GetPantry

func (p *PantryClient) GetPantry() (*types.GetPantryResponse, error)

func (*PantryClient) GetPantryID

func (p *PantryClient) GetPantryID() string

func (*PantryClient) SetPantryID

func (p *PantryClient) SetPantryID(id string)

func (*PantryClient) UpdateContents

func (p *PantryClient) UpdateContents(basketName string, data interface{}) error

func (*PantryClient) UpdatePantryDetails

func (p *PantryClient) UpdatePantryDetails(input *types.UpdatePantryDetailsInput) (*types.GetPantryResponse, error)

func (*PantryClient) UpsertBasket

func (p *PantryClient) UpsertBasket(basketName string, data interface{}) error

Directories

Path Synopsis
src

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL