Guest User

Untitled

a guest
Dec 17th, 2017
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.14 KB | None | 0 0
  1. export default client => {
  2. const create = user => {
  3. return new Promise((resolve, reject) => {
  4. client.put({
  5. TableName: 'users',
  6. Item: user
  7. }, (err, data) => {
  8. if (err) {
  9. return reject(err)
  10. }
  11. resolve()
  12. })
  13. })
  14. }
  15.  
  16. const getById = userId => {
  17. return new Promise((resolve, reject) => {
  18. client.query({
  19. TableName: 'users',
  20. KeyConditionExpression: '#userId = :userId',
  21. ExpressionAttributeNames: {
  22. '#userId': 'userId'
  23. },
  24. ExpressionAttributeValues: {
  25. ':userId': userId
  26. }
  27. }, (err, data) => {
  28. if (err) {
  29. return reject(err)
  30. }
  31. if (!data.Items.length) {
  32. return reject(new UserNotFoundException())
  33. }
  34. resolve(data.Items[0])
  35. })
  36. })
  37. }
  38.  
  39. const save = user => {
  40. return new Promise((resolve, reject) => {
  41. client.put({
  42. TableName: 'users',
  43. Item: user
  44. }, (err, data) => {
  45. if (err) {
  46. return reject(err)
  47. }
  48. resolve()
  49. })
  50. })
  51. }
  52.  
  53. return {
  54. create,
  55. getById,
  56. save
  57. }
  58. }
Add Comment
Please, Sign In to add comment