Skip to content

Commit

Permalink
Merge pull request #200 from feup-infolab/swagger-api-docs
Browse files Browse the repository at this point in the history
Add Swagger API Spec
  • Loading branch information
feup-infolab-rdm committed Apr 10, 2017
2 parents 3072ad2 + 7029738 commit 8695771
Show file tree
Hide file tree
Showing 6 changed files with 367 additions and 62 deletions.
6 changes: 3 additions & 3 deletions conf/deployment_configs.json
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,8 @@
"password" : "r00t_p4ssw0rd"
},
"mySQLDBName" : "dendroVagrantDemo",
"maxUploadSize" : 2147483648,
"maxProjectSize" : 5368709120,
"maxUploadSize" : 1073741824,
"maxProjectSize" : 1073741824,
"maxSimultanousConnectionsToDb" : 3,
"dbOperationTimeout" : 5000,
"tempFilesDir" : "temp",
Expand Down Expand Up @@ -120,7 +120,7 @@
"destroy_all_graphs_on_startup" : false
},
"session": {
"auto_login": false,
"auto_login": true,
"login_user": "demouser1"
},
"files": {
Expand Down
4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,9 @@
"validator": "^7.0.0",
"xml-writer": "^1.4.1",
"xml2js": "0.2.8",
"xmlhttprequest": "1.5.0"
"xmlhttprequest": "1.5.0",
"swagger-ui-express": "latest",
"yamljs" : "latest"
},
"devDependencies": {
"chai": "^3.5.0",
Expand Down
13 changes: 10 additions & 3 deletions src/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ var express = require('express'),
expressSession = require('express-session');
errorHandler = require('express-session');
Q = require('q');
swaggerUi = require('swagger-ui-express');
YAML = require('yamljs');
swaggerDocument = YAML.load('swagger.yaml');

var bootupPromise = Q.defer();

Expand Down Expand Up @@ -1150,6 +1153,10 @@ async.waterfall([
}));
}

app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument, true, {
docExpansion : "list"
}));

app.get('/', index.index);

app.get('/analytics_tracking_code', index.analytics_tracking_code);
Expand All @@ -1158,7 +1165,6 @@ async.waterfall([
app.get('/vertexes', async.apply(Permissions.require, [Permissions.role.system.admin]), vertexes.all);
app.get('/vertexes/random', async.apply(Permissions.require, [Permissions.role.system.admin]), vertexes.random);
app.get('/vertexes/show', async.apply(Permissions.require, [Permissions.role.system.admin]), vertexes.show);
app.get('/vertexes/:source/with/:property', async.apply(Permissions.require, [Permissions.role.system.admin]), vertexes.with_property);

//search
app.get('/search', vertexes.search);
Expand All @@ -1169,7 +1175,8 @@ async.waterfall([
app.get('/admin/reload', async.apply(Permissions.require, [Permissions.role.system.admin]), admin.reload);

//low-level sparql endpoint
app.get('/sparql', async.apply(Permissions.require, [Permissions.role.system.admin]), sparql.show);
//TODO
//app.get('/sparql', async.apply(Permissions.require, [Permissions.role.system.admin]), sparql.show);

//authentication
app.get('/login', auth.login);
Expand Down Expand Up @@ -1954,4 +1961,4 @@ async.waterfall([
}
]);

exports.bootup = bootupPromise.promise;
exports.bootup = bootupPromise.promise;
53 changes: 0 additions & 53 deletions src/controllers/vertexes.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,59 +43,6 @@ exports.all = function(req, res)
});
};

exports.with_property = function(req, res) {

var viewVars = {
title : 'All vertexes from DBpedia that have an abstract'
};

viewVars = DbConnection.paginate(req,
viewVars
);

var query = DbConnection.paginateQuery(
req,
"SELECT DISTINCT ?s WHERE {?s [0] ?o .}"
);

switch(req.params["source"])
{
case ("dbpedia"):
{
db.connection.execute(query,
[
{
type: DbConnection.resource,
value : "http://dbpedia.org/ontology/"+req.params["property"]
}
],
function(err, results) {
if(!err)
{
viewVars.vertexes = results;
res.render('vertexes/all', viewVars);
}
else
{
viewVars.error_messages = ["Unable to fetch dbpedia nodes"];
viewVars.vertexes = results;
res.render('vertexes/all', viewVars);
}
});
break;
}
default:
{
res.render('vertexes/all', {
title : 'There was an error...',
vertexes : []
});

break;
}
}
};

exports.show = function(req, res) {

db.connection.execute("SELECT ?p ?o WHERE {[0] ?p ?o .}",
Expand Down
4 changes: 2 additions & 2 deletions src/views/projects/show/stats_modal.ejs
Original file line number Diff line number Diff line change
Expand Up @@ -73,10 +73,10 @@
</div>
<div class="col-lg-4">
<div class="progress progress-striped">
<div class="progress-bar" role="progressbar" aria-valuenow="{{project_stats.size/project_stats.max_size}}" aria-valuemin="0" aria-valuemax="100" style="width: {{project_stats.percent_full}}%">
<div class="progress-bar" role="progressbar" aria-valuenow="{{shared.project_stats.size}} / {{shared.project_stats.max_size}}" aria-valuemin="0" aria-valuemax="100">
<span class="sr-only">{{shared.project_stats.percent_full}}%</span>
</div>
{{shared.project_stats.percent_full}}%
{{shared.project_stats.percent_full}}
</div>
{{shared.project_stats.size}} / {{shared.project_stats.max_size}}
</div>
Expand Down
Loading

0 comments on commit 8695771

Please sign in to comment.