-
Notifications
You must be signed in to change notification settings - Fork 2
/
lambda.js
89 lines (70 loc) · 2.2 KB
/
lambda.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/**
* Endpoints for AWS Lambda
* Created by Chuck on 2015-08-18.
*/
"use strict";
var AWS = require('aws-sdk');
var bcrypt = require('bcrypt');
var uuid = require('node-uuid');
var auth = require('basic-auth');
//Load routes for v1 XCloud
var repo = require('./v1/aws-repo.js')(AWS, bcrypt, uuid);
//var repo = require('./v1/mock-repo.js')();
var services = require('./v1/services.js')(repo);
exports.fetch = function(event, context) {
var authorization = auth(event);
if(! authorization){
authorization = {name:null, pass: null}
}
var username = authorization.name;
var password = authorization.pass;
services.fetchPreferences(username, password, function(err, data){
if(err){
context.succeed(err);
} else {
context.succeed(data);
}
});
};
exports.upload = function(event, context) {
var authorization = auth(event);
if(! authorization){
authorization = {name:null, pass: null}
}
var username = authorization.name;
var password = authorization.pass;
var data = event.data === undefined ? null : event.data;
services.storePreferences(username, password, data, function(err, success){
if(err || success === false){
context.succeed(err);
} else {
context.succeed({"errors": "false"});
}
});
};
exports.auth = function(event, context) {
var authorization = auth(event);
if(! authorization){
authorization = {name:null, pass: null}
}
var username = authorization.name;
var password = authorization.pass;
services.loginUser(username, password, function(err, success){
if(err || success === false){
context.succeed(err);
} else {
context.succeed({"errors": "false"});
}
});
};
exports.register = function(event, context) {
var username = event.username === undefined ? null : event.username;
var password = event.password === undefined ? null : event.password;
services.registerUser(username, password, function(err, success){
if(err){
context.succeed(err);
} else {
context.succeed({"errors": "false"});
}
});
};