mirror of
https://github.com/mainflux/mainflux.git
synced 2025-04-26 13:48:53 +08:00

* initial commit update api docs Signed-off-by: rodneyosodo <socials@rodneyosodo.com> Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * initial commit enrich sdk Signed-off-by: rodneyosodo <socials@rodneyosodo.com> Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * initial commit enrich cli Signed-off-by: rodneyosodo <socials@rodneyosodo.com> Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * add consumers test Signed-off-by: rodneyosodo <socials@rodneyosodo.com> Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * remove dead code Signed-off-by: rodneyosodo <socials@rodneyosodo.com> Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * add certs sdk tests Signed-off-by: rodneyosodo <socials@rodneyosodo.com> Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * change contact name Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * fix tests Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * Rename Disconnect Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * Fix subscription typo Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * Fix Swagger File Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * Add Tests Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * Change Limit to 10 Signed-off-by: rodneyosodo <blackd0t@protonmail.com> * Remove empty line Signed-off-by: rodneyosodo <blackd0t@protonmail.com> --------- Signed-off-by: rodneyosodo <socials@rodneyosodo.com> Signed-off-by: rodneyosodo <blackd0t@protonmail.com> Co-authored-by: rodneyosodo <socials@rodneyosodo.com>
42 lines
1012 B
Go
42 lines
1012 B
Go
package sdk
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
"net/http"
|
|
|
|
"github.com/mainflux/mainflux/pkg/errors"
|
|
)
|
|
|
|
const policiesEndpoint = "policies"
|
|
|
|
type Policy struct {
|
|
Object string `json:"object,omitempty"`
|
|
Subject []string `json:"subjects,omitempty"`
|
|
Policies []string `json:"policies,omitempty"`
|
|
}
|
|
|
|
func (sdk mfSDK) CreatePolicy(policy Policy, token string) errors.SDKError {
|
|
data, err := json.Marshal(policy)
|
|
if err != nil {
|
|
return errors.NewSDKError(err)
|
|
}
|
|
|
|
url := fmt.Sprintf("%s/%s", sdk.authURL, policiesEndpoint)
|
|
|
|
_, _, sdkerr := sdk.processRequest(http.MethodPost, url, token, string(CTJSON), data, http.StatusCreated)
|
|
return sdkerr
|
|
}
|
|
|
|
func (sdk mfSDK) DeletePolicy(policy Policy, token string) errors.SDKError {
|
|
data, err := json.Marshal(policy)
|
|
if err != nil {
|
|
return errors.NewSDKError(err)
|
|
}
|
|
|
|
url := fmt.Sprintf("%s/%s", sdk.authURL, policiesEndpoint)
|
|
|
|
_, _, sdkerr := sdk.processRequest(http.MethodDelete, url, token, string(CTJSON), data, http.StatusNoContent)
|
|
return sdkerr
|
|
}
|