UNPKG

grafo-client

Version:

Grafo Client API Library

1 lines 2.12 kB
"use strict";var request=require("request");const queryString=require("query-string");var ConfHelper=require("./conf/conf_helper");function CommentApi(e,r,t){this.confHelper=new ConfHelper(e),this.sessionCookie=r,this.logger=t}module.exports=CommentApi,CommentApi.prototype.listComments=function(e){var r=this;return r.logger.debug("Comment Api: List all 07_comments"),new Promise(function(t,o){var s={Cookie:r.sessionCookie},i={url:getCommentUrlByNodeId(r,e),method:"GET",headers:s};request(i,function(e,s,i){if(e)r.logger.error(e),o(new Error("Problem in fetching 07_comments list"));else if(200===s.statusCode){var n=JSON.parse(s.body);t(n)}else{var l="HTTP error code: "+s.statusCode+", Message: "+s.body;r.logger.error(l),o(new Error(l))}})})},CommentApi.prototype.listReplies=function(e){var r=this;return r.logger.debug("Comment Api: List all replies"),new Promise(function(t,o){var s={Cookie:r.sessionCookie},i={url:getReplyUrlByNodeId(r,e),method:"GET",headers:s};request(i,function(e,s,i){if(e)r.logger.error(e),o(new Error("Problem in fetching reply list"));else if(200===s.statusCode){var n=JSON.parse(s.body);t(n)}else{var l="HTTP error code: "+s.statusCode+", Message: "+s.body;r.logger.error(l),o(new Error(l))}})})};var getCommentUrlByNodeId=function(e,r){var t=r.conceptId,o="concepts";return r.relationshipId&&(t=r.relationshipId,o="relationships"),r.attributeId?e.confHelper.getBaseRestUrl()+"/api/v1/documents/"+r.docId+"/"+o+"/"+t+"/attributes/"+r.attributeId+"/comments?"+queryString.stringify(r.getQueryMap()):e.confHelper.getBaseRestUrl()+"/api/v1/documents/"+r.docId+"/"+o+"/"+t+"/comments?"+queryString.stringify(r.getQueryMap())},getReplyUrlByNodeId=function(e,r){var t=r.conceptId,o="concepts";return r.relationshipId&&(t=r.relationshipId,o="relationships"),r.attributeId?e.confHelper.getBaseRestUrl()+"/api/v1/documents/"+r.docId+"/"+o+"/"+t+"/attributes/"+r.attributeId+"/comments/"+r.commentId+"/replies?"+queryString.stringify(r.getQueryMap()):e.confHelper.getBaseRestUrl()+"/api/v1/documents/"+r.docId+"/"+o+"/"+t+"/comments/"+r.commentId+"/replies?"+queryString.stringify(r.getQueryMap())};