summaryrefslogtreecommitdiffstats
path: root/vnfcatalogue/VNF_Catalogue/routes/vnf_tag_association.js
diff options
context:
space:
mode:
authorKumar Rishabh <shailrishabh@gmail.com>2017-03-15 01:02:11 +0530
committerKumar Rishabh <shailrishabh@gmail.com>2017-03-16 08:08:12 +0530
commit9c3c772ceb85b1a3db027c4fb52a9f7c59e005ef (patch)
tree130ec820e4d539fb9cf70c5df1e09551d677d871 /vnfcatalogue/VNF_Catalogue/routes/vnf_tag_association.js
parent51d1dd9fd95ce32247ec950235e2e91966390310 (diff)
Add vnf, tag create & Associate Plugins
Adds support for accessing database, plugin to create tags and vnfs and make association between them. Also adds autocomplete feature to vnf-tag association. Change-Id: Id55f998df68ae5e6e6fd298c6393b3500777468a Signed-off-by: Kumar Rishabh <shailrishabh@gmail.com>
Diffstat (limited to 'vnfcatalogue/VNF_Catalogue/routes/vnf_tag_association.js')
-rw-r--r--vnfcatalogue/VNF_Catalogue/routes/vnf_tag_association.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/vnfcatalogue/VNF_Catalogue/routes/vnf_tag_association.js b/vnfcatalogue/VNF_Catalogue/routes/vnf_tag_association.js
new file mode 100644
index 0000000..d1a3d72
--- /dev/null
+++ b/vnfcatalogue/VNF_Catalogue/routes/vnf_tag_association.js
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2017 Kumar Rishabh and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Apache License, Version 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *******************************************************************************/
+
+var express = require('express');
+var router = express.Router();
+
+/* Post controller for VNF_TAG Association */
+router.post('/', function(req, res) {
+ req.checkBody("tag_name", "TAG Name must not be empty").notEmpty();
+ req.checkBody("vnf_name", "VNF Name must not be empty").notEmpty();
+
+ var errors = req.validationErrors();
+ console.log(errors);
+
+ var response = ''; for(var i = 0; i < errors.length; i++) {
+ console.log(errors[i]['msg']);
+ response = response + errors[i]['msg'] + '; ';
+ }
+
+ if(errors) { res.status(500);
+ res.send({'error': response});
+ return;
+ }
+
+ var tag_name = req.param('tag_name');
+ var vnf_name = req.param('vnf_name');
+
+ db_pool.getConnection(function(err, connection) {
+ // Use the connection
+ //sql_query = 'INSERT INTO tag SET ?'
+ sql_query = 'insert into vnf_tags(vnf_id, tag_id) values ((select vnf_id from vnf where vnf_name = \'' + vnf_name + '\'), (select tag_id from tag where tag_name = \'' + tag_name + '\'))';
+ console.log(sql_query);
+ connection.query(sql_query, function (error, results, fields) {
+ // And done with the connection.
+
+ connection.release();
+ res.end('{"success" : "Updated Successfully", "status" : 200}');
+
+ // Handle error after the release.
+ if (error) throw error;
+ // Don't use the connection here, it has been returned to the pool.
+ });
+ });
+
+ res.end('{"success" : "Updated Successfully", "status" : 200}');
+ //res.render('vnf_tag_association', { title: 'Express' });
+});
+
+module.exports = router;