diff options
author | Kiran Kamineni <kiran.k.kamineni@intel.com> | 2018-10-31 16:24:32 -0700 |
---|---|---|
committer | Victor Morales <victor.morales@intel.com> | 2018-11-08 17:07:59 -0800 |
commit | 7d2d48d3d0b35de0acd03c6e8a1261efd736edc3 (patch) | |
tree | cdfc546b98fbea5df408f620387499984a78469f /src/k8splugin/db/DB.go | |
parent | 985a6654725e3931737f1a0831bd3b44a0d99a28 (diff) |
Add vnf definition APIs3.0.0-ONAPcasablanca
Adding APIs for POST, GET, LIST (implemented via GET)
and DELETE commands on /v1/vnfd base for creating,
getting, listing and deleting VNF Definitions.
P2: Added unit tests for vnfdhandler.go
P3: Add unit tests for serialize and deserialize
P4: Integrating review comments
P5: Added customizable mocking for vnfdhandler_test
P6: Added customizablt mocking for vnfd_test
Note that this will soon need to be updated once
the db changes go through in patch 71090
Issue-ID: MULTICLOUD-393
Change-Id: Id509bed370ab3bdc572c6ead22324c1ee3dbf82d
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
Signed-off-by: Victor Morales <victor.morales@intel.com>
Diffstat (limited to 'src/k8splugin/db/DB.go')
-rw-r--r-- | src/k8splugin/db/DB.go | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/k8splugin/db/DB.go b/src/k8splugin/db/DB.go index c8895088..d92b5953 100644 --- a/src/k8splugin/db/DB.go +++ b/src/k8splugin/db/DB.go @@ -14,6 +14,9 @@ limitations under the License. package db import ( + "encoding/json" + "reflect" + pkgerrors "github.com/pkg/errors" ) @@ -40,3 +43,21 @@ var CreateDBClient = func(dbType string) error { return pkgerrors.New(dbType + "DB not supported") } } + +// Serialize converts given data into a JSON string +func Serialize(v interface{}) (string, error) { + out, err := json.Marshal(v) + if err != nil { + return "", pkgerrors.Wrap(err, "Error serializing "+reflect.TypeOf(v).String()) + } + return string(out), nil +} + +// DeSerialize converts string to a json object specified by type +func DeSerialize(str string, v interface{}) error { + err := json.Unmarshal([]byte(str), &v) + if err != nil { + return pkgerrors.Wrap(err, "Error deSerializing "+str) + } + return nil +} |