diff --git a/.gitignore b/.gitignore index b3fc3ec..3a23e56 100644 --- a/.gitignore +++ b/.gitignore @@ -3,5 +3,3 @@ build/ *~ venv/ padinfo.json -*.json -!padinfo.sample.json \ No newline at end of file diff --git a/createDiffHTML.py b/createDiffHTML.py deleted file mode 100755 index 3a224fe..0000000 --- a/createDiffHTML.py +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env python - -from argparse import ArgumentParser -import json -from urllib import urlencode -from urllib2 import urlopen, HTTPError, URLError - -p = ArgumentParser("") -p.add_argument("padid", help="the padid") -p.add_argument("--startrev", type=int, default=0, help="starting revision") -p.add_argument("--endrev", type=int, default=None, help="ending revision, default: last") -p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") -p.add_argument("--showurl", default=False, action="store_true") -args = p.parse_args() - -with open(args.padinfo) as f: - info = json.load(f) -apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) -data = {} -data['apikey'] = info['apikey'] -data['padID'] = args.padid.encode("utf-8") -data['startRev'] = "{0}".format(args.startrev) -if args.endrev != None: - data['endRev'] = "{0}".format(args.endrev) -requesturl = apiurl+'createDiffHTML?'+urlencode(data) -if args.showurl: - print requesturl -else: - print json.load(urlopen(requesturl))['data']['html'] diff --git a/etherdump/commands/diffhtml.py b/etherdump/commands/diffhtml.py new file mode 100755 index 0000000..a93ed37 --- /dev/null +++ b/etherdump/commands/diffhtml.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python + +from argparse import ArgumentParser +import json +from urllib import urlencode +from urllib2 import urlopen, HTTPError, URLError + +def main(args): + p = ArgumentParser("") + p.add_argument("padid", help="the padid") + p.add_argument("--startrev", type=int, default=0, help="starting revision") + p.add_argument("--endrev", type=int, default=None, help="ending revision, default: last") + p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") + p.add_argument("--showurl", default=False, action="store_true") + args = p.parse_args(args) + + with open(args.padinfo) as f: + info = json.load(f) + apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) + data = {} + data['apikey'] = info['apikey'] + data['padID'] = args.padid.encode("utf-8") + data['startRev'] = "{0}".format(args.startrev) + if args.endrev != None: + data['endRev'] = "{0}".format(args.endrev) + requesturl = apiurl+'createDiffHTML?'+urlencode(data) + if args.showurl: + print requesturl + else: + print json.load(urlopen(requesturl))['data']['html'] diff --git a/etherdump/commands/listauthors.py b/etherdump/commands/listauthors.py new file mode 100755 index 0000000..5c6037f --- /dev/null +++ b/etherdump/commands/listauthors.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python + +from argparse import ArgumentParser +import json +from urllib import urlencode +from urllib2 import urlopen, HTTPError, URLError + + +def main(args): + p = ArgumentParser("") + p.add_argument("padid", help="the padid") + p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") + p.add_argument("--showurl", default=False, action="store_true") + p.add_argument("--format", default="lines", help="output format, can be: lines, json; default: lines") + args = p.parse_args(args) + + with open(args.padinfo) as f: + info = json.load(f) + apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) + data = {} + data['apikey'] = info['apikey'] + data['padID'] = args.padid.encode("utf-8") + requesturl = apiurl+'listAuthorsOfPad?'+urlencode(data) + if args.showurl: + print requesturl + else: + results = json.load(urlopen(requesturl))['data']['authorIDs'] + if args.format == "json": + print json.dumps(results) + else: + for r in results: + print r.encode("utf-8") diff --git a/etherdump/commands/revisionscount.py b/etherdump/commands/revisionscount.py new file mode 100755 index 0000000..dad2901 --- /dev/null +++ b/etherdump/commands/revisionscount.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python + +from argparse import ArgumentParser +import json +from urllib import urlencode +from urllib2 import urlopen, HTTPError, URLError + +def main(args): + p = ArgumentParser("") + p.add_argument("padid", help="the padid") + p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") + p.add_argument("--showurl", default=False, action="store_true") + args = p.parse_args(args) + + with open(args.padinfo) as f: + info = json.load(f) + apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) + data = {} + data['apikey'] = info['apikey'] + data['padID'] = args.padid.encode("utf-8") + requesturl = apiurl+'getRevisionsCount?'+urlencode(data) + if args.showurl: + print requesturl + else: + results = json.load(urlopen(requesturl))['data']['revisions'] + print results diff --git a/etherdump/commands/text.py b/etherdump/commands/text.py new file mode 100644 index 0000000..c0f50dc --- /dev/null +++ b/etherdump/commands/text.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python + +from argparse import ArgumentParser +import json +from urllib import urlencode +from urllib2 import urlopen, HTTPError, URLError + + +def main(args): + p = ArgumentParser("") + p.add_argument("padid", help="the padid") + p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") + p.add_argument("--showurl", default=False, action="store_true") + p.add_argument("--format", default="text", help="output format, can be: text, json; default: text") + args = p.parse_args(args) + + with open(args.padinfo) as f: + info = json.load(f) + apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) + data = {} + data['apikey'] = info['apikey'] + data['padID'] = args.padid.encode("utf-8") + requesturl = apiurl+'getText?'+urlencode(data) + if args.showurl: + print requesturl + else: + results = json.load(urlopen(requesturl))['data'] + if args.format == "json": + print json.dumps(results) + else: + print results['text'].encode("utf-8") + + # To save to file run: + # python gettext.py > copy.txt diff --git a/getRevisionsCount.py b/getRevisionsCount.py deleted file mode 100755 index 10150e3..0000000 --- a/getRevisionsCount.py +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env python - -from argparse import ArgumentParser -import json -from urllib import urlencode -from urllib2 import urlopen, HTTPError, URLError - -p = ArgumentParser("") -p.add_argument("padid", help="the padid") -p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") -p.add_argument("--showurl", default=False, action="store_true") -p.add_argument("--list", default=False, action="store_true", help="display one per line") -args = p.parse_args() - -with open(args.padinfo) as f: - info = json.load(f) -apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) -data = {} -data['apikey'] = info['apikey'] -data['padID'] = args.padid.encode("utf-8") -requesturl = apiurl+'getRevisionsCount?'+urlencode(data) -if args.showurl: - print requesturl -else: - results = json.load(urlopen(requesturl))['data']['revisions'] - print results diff --git a/getText.py b/getText.py deleted file mode 100644 index 69bb758..0000000 --- a/getText.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python - -from argparse import ArgumentParser -import json -from urllib import urlencode -from urllib2 import urlopen, HTTPError, URLError - -p = ArgumentParser("") -p.add_argument("padid", help="the padid") -p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") -p.add_argument("--showurl", default=False, action="store_true") -p.add_argument("--text", default=False, action="store_true", help="text output (not json)") -args = p.parse_args() - -with open(args.padinfo) as f: - info = json.load(f) -apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) -data = {} -data['apikey'] = info['apikey'] -data['padID'] = args.padid.encode("utf-8") -requesturl = apiurl+'getText?'+urlencode(data) -if args.showurl: - print requesturl -else: - results = json.load(urlopen(requesturl))['data'] - if args.text: - print results['data'].encode("utf-8") - else: - print json.dump(results) - -# To save to file run: -# python gettext.py > copy.txt diff --git a/listAuthorsOfPad.py b/listAuthorsOfPad.py deleted file mode 100755 index 1204d50..0000000 --- a/listAuthorsOfPad.py +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env python - -from argparse import ArgumentParser -import json -from urllib import urlencode -from urllib2 import urlopen, HTTPError, URLError - -p = ArgumentParser("") -p.add_argument("padid", help="the padid") -p.add_argument("--padinfo", default="padinfo.json", help="padinfo, default: padinfo.json") -p.add_argument("--showurl", default=False, action="store_true") -p.add_argument("--list", default=False, action="store_true", help="display one per line") -args = p.parse_args() - -with open(args.padinfo) as f: - info = json.load(f) -apiurl = "{0[protocol]}://{0[hostname]}:{0[port]}{0[apiurl]}{0[apiversion]}/".format(info) -data = {} -data['apikey'] = info['apikey'] -data['padID'] = args.padid.encode("utf-8") -requesturl = apiurl+'listAuthorsOfPad?'+urlencode(data) -if args.showurl: - print requesturl -else: - results = json.load(urlopen(requesturl))['data']['authorIDs'] - if args.list: - for r in results: - print r - else: - print json.dumps(results) diff --git a/padinfo.sample.json b/padinfo.sample.json new file mode 100644 index 0000000..ea53748 --- /dev/null +++ b/padinfo.sample.json @@ -0,0 +1,8 @@ +{ + "protocol": "http", + "port": 9001, + "hostname": "localhost", + "apiversion": "1.2.9", + "apiurl": "/api/", + "apikey": "8f55f9ede1b3f5d88b3c54eb638225a7bb71c64867786b608abacfdb7d418be1" +}