aboutsummaryrefslogtreecommitdiffstats
path: root/src/k8splugin/db/DB.go
diff options
context:
space:
mode:
authorKiran Kamineni <kiran.k.kamineni@intel.com>2018-10-31 16:24:32 -0700
committerVictor Morales <victor.morales@intel.com>2018-11-08 17:07:59 -0800
commit7d2d48d3d0b35de0acd03c6e8a1261efd736edc3 (patch)
treecdfc546b98fbea5df408f620387499984a78469f /src/k8splugin/db/DB.go
parent985a6654725e3931737f1a0831bd3b44a0d99a28 (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.go21
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
+}